|
#1
|
|||
|
|||
OnClick
Добрый день!
У меня такой вопрос: На форме имеется CheсkBox. Нужно при открытии формы (Form1.Show) программно вызвать событие OnClick этого чекбокса (программно нажать на него мышкой). CheckBox1.OnClick(Self); ничего не дало Спасибо! |
#2
|
||||
|
||||
Код:
CheckBox1.Click; Код:
CheckBox1Click(Self) Что делать, когда сломался комп: 1. Если вы юзер - делать ноги. 2. Если ремонтник - делать деньги. 3. Если вы программист - делать вид, что так было задумано. |
#3
|
||||
|
||||
Попробуйте так
CheckBox1.Checked:=true; |
#4
|
|||
|
|||
Цитата:
CheckBox1.Click; выдает ошибку "Cannot Access protected symbol..." CheckBox1Click(Self); ничего не дает. ChekBox1.Checked:=True; мне не подходит, там проблемы с фокусом начинаются. Нужно программно кликнуть. |
#5
|
|||
|
|||
Цитата:
|
#6
|
|||
|
|||
Цитата:
Спасибо. |
#7
|
|||
|
|||
Делаешь обработчик события Onclick...для чекбокса
procedure TForm1.CheckBox1Click(Sender: TObject); begin CheckBox1.Checked:=true;//устанавливаешь галочку end; а в form1.Show begin пишешь CheckBox1.OnClick(Self) end; |
#8
|
|||
|
|||
Есть такой обработчик:
Код:
procedure TAddServices.CheckBox2Click(Sender: TObject); begin if CheckBox2.Checked=true then begin Edit3.Color:=clWindow; Edit3.Enabled:=True; Edit3.SetFocus; end; if CheckBox2.Checked=false then begin Edit3.Color:=clBtnFace; Edit3.Enabled:=false; end; end; Поэтому CheckBox1.Checked:=true поставить не могу Проблема в том, что вызывается обработчик с другой формы: Код:
procedure TServices.Button2Click(Sender: TObject); begin AddServices:=TAddServices.Create(self); AddServices.CheckBox2.OnClick(self); AddServices.ShowModal; end; Последний раз редактировалось Terio, 19.03.2008 в 20:04. |
#9
|
|||
|
|||
Всё, проблему решил в событии onShow той же формы, где CheckBox. Проблема была из-за того, что SetFocus шел раньше чем создавалась форма.
|