Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.09.02;
Скачать: [xml.tar.bz2];

Вниз

Зависает Memo. Что делать?   Найти похожие ветки 

 
Miroving   (2007-08-12 18:47) [0]

В Memo добавляю в цикле строки:

for i := 0 to 100 do
   Memo1.Lines.Add("XXXXX");


Видимая часть Memo1 - строк 10, поэтому поставил вертикальную полосу прокрутки.

В преимущественном болшинстве случаев строки добавляются нормально, но при попытке скроллинга система виснит.

Иногда бывает, что виснет и при попытке добавления. Пичём, процесс висит от минуты до 5-ти, потом отпускает, но при попытке передать фокус Memo1 виснет снова и т.д.  Что это за ошибка и как её можно исправить?  Спасибо.


 
TUser ©   (2007-08-12 19:05) [1]

BeginUpdate/EndUodate


 
Miroving   (2007-08-12 19:26) [2]


> BeginUpdate/EndUodate

Помогло, но не совсем. Скроллинг теперь отрабатывает нормально, но осталась другая проблема:
у меня у Memo1 стоит property readonly. И если устанавливаю мигающий курсор в поле Memo1 и пытаюсь им пройтись по записям (pgUp/pgDown), то как только курсор выходит из области видимости происходит зависание.

Как можно запретить устанавливать курсор в  Memo1 (именно не курсор мышки не должен ходить над областью, занимаемой Memo1, а мигающий курсор в Memo1)?


 
Leonid Troyanovsky ©   (2007-08-12 19:51) [3]


> Miroving   (12.08.07 18:47)  

> В преимущественном болшинстве случаев строки добавляются
> нормально, но при попытке скроллинга система виснит.

Отца русской демократии могут спасти контролы имеющие стиль *virtual,
f.e., TListBox - lbVirtual*, или даже обычный TDrawGrid.

Правда, логику надо слегка переосмыслить.

--
Regards, LVT.


 
Leonid Troyanovsky ©   (2007-08-12 20:00) [4]


> Miroving   (12.08.07 19:26) [2]

> Как можно запретить устанавливать курсор в  Memo1 (именно
> не курсор мышки не должен ходить над областью, занимаемой
> Memo1, а мигающий курсор в Memo1)?

Memo1.Enabled := False

--
Regards, LVT.


 
Miroving   (2007-08-12 20:06) [5]


> Memo1.Enabled := False

В этом случае нельзя скроллить :(


 
Anatoly Podgoretsky ©   (2007-08-12 20:07) [6]

Тебе не угодить.
Почему бы не разрешить редактирование мемо, что в этом плохого.


 
Miroving   (2007-08-12 20:11) [7]


> Тебе не угодить.
> Почему бы не разрешить редактирование мемо, что в этом плохого.
>


Можно конечно, но оно преднозначено только для вывода информации. Логичнее и красивее запретить.


 
Anatoly Podgoretsky ©   (2007-08-12 20:13) [8]

> Miroving  (12.08.2007 20:11:07)  [7]

Ничего плохого не вижу, а хорошее есть - пользователь может удалить лишнею информацию и все остальное работает.


 
Miroving   (2007-08-12 20:22) [9]

Кстати, если поставить

ReadOnly := false;
Enable := true;

то ошибка [2] остаётся.


 
Miroving   (2007-08-12 20:48) [10]

Забил я на этот Memo глючной, поставил StringGrid. Всё работает отлично.
Всем спасибо.


 
Leonid Troyanovsky ©   (2007-08-12 20:53) [11]


> Miroving   (12.08.07 20:48) [10]

> Забил я на этот Memo глючной, поставил StringGrid.

Memo не есть более глючный, чем StringGrid.
Правильней сказать: "непонятый".

--
Regards, LVT.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.09.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.04 c
15-1185972624
Elen
2007-08-01 16:50
2007.09.02
Работа с палитрой Корела


3-1178528451
DmitrichJ
2007-05-07 13:00
2007.09.02
Как проверить установлен или нет firebird?


4-1173905354
ffo_2
2007-03-14 23:49
2007.09.02
Как программно нажать Ctrl + V?


2-1186724942
Евгений Р.
2007-08-10 09:49
2007.09.02
Модуль открывается в Bin-формате


2-1186718334
Алексей О.
2007-08-10 07:58
2007.09.02
Распределение квадратов по ширине





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский