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

Вниз

Вызов событий Combobox созданных runtime   Найти похожие ветки 

 
dzmitry_li   (2005-11-14 16:32) [0]

Нда, споткнулся на простом коде...
создаю Combobox runtime, устанавливаю обработчик событий, но они как я не бьюсь - не вызываются,
Delphi2005 и Delphi7 проверено и неработоспособно... куда плясать?

код ниже


procedure TForm1.FormCreate(Sender: TObject);
begin
 Col.Combo:=TComboBox.Create(nil); // Form1, Application
 Col.Combo.ItemHeight:=13;
 Col.Combo.DropDownCount:=16;
 Col.Combo.Style:=csDropDownList;
 Col.Combo.Parent:=Form1;
 Col.Combo.OnChange:=ComboBox1Change;
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
ShowMessage("Ну вызовись этот грёбаный метод!")
end;


 
Reindeer Moss Eater ©   (2005-11-14 16:42) [1]

Прочитай Note к свойству OnChange в справке.


 
dzmitry_li   (2005-11-14 16:54) [2]

блин...

ну ладно... читаю хелп по OnClick (специально и внимательно), не нахожу крамолы
и пишу


Col.Combo.OnClick:=ComboBox1Click;
end;

procedure TForm1.ComboBox1Click(Sender: TObject);
begin
ShowMessage("Ну вызовись этот грёбаный метод!")
end;


результат тот же...

из всех перепробаванных методов рантайм ловятся только события клавиатуры
непорядок - как исправить


 
DesWind ©   (2005-11-14 17:01) [3]

Этот код полностью рабочий. А что такое Col ?


 
dzmitry_li   (2005-11-14 18:03) [4]

переволновался... прошёлся по улице (когда шёл домой с работы), и проблема решилась
отвечу сразу на вопрос что такое Col, а допустим это

type TCol=record
p: TPanel;
Combo: TComboBox;
end;
var
Col: TCol;

второе, хотел внедрить в StringGrid в некоторые ячейки выпадающий список ComboBox
соответственно делал вышеприведённый код.Забавно что когда Parent форма - события работают, когда парент StringGrid - снова не работает.
То что у меня проглотилось и заработало вот код

Col.p:=TPanel.Create(Application);
Col.p.Visible:=True;
Col.p.Parent:=StringGrid2;
Col.Combo:=TComboBox.Create(nil);
Col.Combo.Visible:=True;
Col.Combo.Tag:=i;
Col.Combo.Parent:=Col.p;
Col.Combo.OnClick:=ComboBox1Click;
Col.Combo.Items.Add("1");
Col.Combo.Items.Add("2");
Col.Combo.Items.Add("3");
Col.Combo.Height:=100;
Col.p.Width:=Col.Combo.Width;
Col.p.Height:=Col.Combo.Height;

конечно это черновой код, для теста, в реальности не так будет реализовано - не пугайтесь
спасибо тем кто пытался помочь



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

Текущий архив: 2005.12.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.041 c
14-1132231952
Andersen
2005-11-17 15:52
2005.12.11
Очередная загадка


14-1132296979
MBo
2005-11-18 09:56
2005.12.11
Пятничные задачки с участием несравненного Васи Пупкина ;)


6-1125508765
FShadow
2005-08-31 21:19
2005.12.11
С чего начать создание проги типа PortTunnel?


1-1131962564
Дмитрий_05
2005-11-14 13:02
2005.12.11
Окно программы не высвечивается в таскбаре


1-1131895138
zxc
2005-11-13 18:18
2005.12.11
чем еще можно рисовать