Вниз
Скачать: CL | DM;

Access Violation при работе с TComboBox.   Найти похожие ветки 

← →
Дельфятник   (2002-06-26 17:37) [0]

У меня есть обработчик события OnChange для нескольких TComboBox. Вот его код:

procedure TInputForm.ComboBox1Change(Sender: TObject);
begin
if ((Sender as TComboBox).Text<>"") and ((Sender as TComboBox).Text<>" ") and
(not (Sender as TComboBox).DroppedDown)
then (Sender as TComboBox).OnClick(Sender)
end;

Проблема в том, что не у всех ComboBox"ов есть обработчик события OnClick, поэтому у них происходит Access Violation при попытке вызова этой процедуры. Как должно выглядеть условие проверки наличия обработчика события OnClick?


← →
Skier ©   (2002-06-26 17:39) [1]

>Дельфятник
Через RTTI


← →
Skier ©   (2002-06-26 17:44) [2]

Ой, не так вопрос понял. Извини.
Нужно проверять на nil.


← →
Дельфятник   (2002-06-26 18:22) [3]

Я добавил условие Assigned((Sender as TComboBox).OnClick), и теперь Access Violation выскакивает только один раз - при первом вызове OnChange, хотя, возможно, где-то ещё в программе надо добавить эту проверку.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
3-23443
Dark Programmer
2002-06-14 11:36
2002.07.08
Как получить доступ к записи в ДБГриде?


1-23623
rumata_lee
2002-06-25 17:35
2002.07.08
Активный компонент формы


4-23841
whc
2002-05-10 13:33
2002.07.08
Мышь над StringGrid-ом


14-23766
Val
2002-06-07 13:25
2002.07.08
ваши мысли по поводу?


1-23615
Александр
2002-06-25 13:02
2002.07.08
Иконки




   Наверх