Не правильное поведение StringGrid'а

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Не правильное поведение StringGrid'а

Сообщение bestonix » 14.05.2010 14:32:38

Доброго здоровья уважаемые.

Стоит у меня Lazarus v.0.9.28.2 бета, версия FPC: 2.2.4

Появилась проблема откуда не ждал. Есть на форме компонент StringGrid у которого есть два события OnExit & OnKeyDown.
Программа запустилась и я просто щелкаю мышкой на StringGir'е. Первое событие которое откликается на это как ни странно OnExit.
Хотя по задумке запись в БД должна произойти по выходу с компоненты т.е. я так понимаю когда он (грид) теряет фокус.

Пробовал прописать и событие OnEnter, прописал там простой оператор ShowMessage('Процедура OnEnter').
На него откликается до OnExit.
Причем срабатывает несколько раз, а затем все равно попадает на OnExit, хотя и не пытался никуда уходить с грида.
Что это и как с этим бороться и можно ли вообще ?

Добавлено спустя 1 час 7 минут 29 секунд:
Такое поведение происходит только при выставленной опции позволяющей редактировать строки.
Такое впечатление, что при этом над соответствующей строкой "рисуется" TEdit или что-то еще.
Тогда становится понятно почему срабатывает событие OnExit
bestonix
новенький
 
Сообщения: 66
Зарегистрирован: 15.04.2010 08:26:00
Откуда: Жигулёвск

Re: Не правильное поведение StringGrid'а

Сообщение alexs » 14.05.2010 21:56:37

bestonix писал(а):Такое впечатление, что при этом над соответствующей строкой "рисуется" TEdit или что-то еще.

Именно так и есть
PS
поэтому в DBGrid-e и и его наследниках очень рекомендую флажок CancelOnExit ставить в false.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Не правильное поведение StringGrid'а

Сообщение bestonix » 17.05.2010 07:11:36

alexs писал(а):
bestonix писал(а):Такое впечатление, что при этом над соответствующей строкой "рисуется" TEdit или что-то еще.

Именно так и есть
PS
поэтому в DBGrid-e и и его наследниках очень рекомендую флажок CancelOnExit ставить в false.


Со StringGrid'ом значит нужно придумать другой алгоритм ?
bestonix
новенький
 
Сообщения: 66
Зарегистрирован: 15.04.2010 08:26:00
Откуда: Жигулёвск

Re: Не правильное поведение StringGrid'а

Сообщение alexs » 17.05.2010 19:39:55

Скорее всего - надо пилить исходники.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 34

Рейтинг@Mail.ru