Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.02;
Скачать: CL | DM;

Вниз

Зависает 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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.021 c
15-1186225189
foreverDelphi
2007-08-04 14:59
2007.09.02
кто хочет из гуру помочь новичку


15-1186504289
leonidus
2007-08-07 20:31
2007.09.02
Разыскивается Янис Прасоль


15-1186168733
Prohodil Mimo
2007-08-03 23:18
2007.09.02
Где можно найти что понимает FireFox в CSS?


3-1178619745
pavel_guzhanov
2007-05-08 14:22
2007.09.02
Ошибка при вставке записи и коммит транзакции


15-1186039377
VirEx
2007-08-02 11:22
2007.09.02
С днем рождения 29 июля!