![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Создаётся checkbox на панели
Код:
begin Panel := TPanel.Create(Self); Panel.Parent := Form1; Panel.Left := 20; Panel.Top := 20; Check := TCheckBox.Create(Self); Check.Parent := Panel; Check.Left := 5; Check.Top := 5; Check.Caption := 'RunFat'; end; Как сделать,чтобы при нажатии на checkbox на нём не создавался фокус? ![]() Последний раз редактировалось Admin, 14.03.2011 в 15:51. |
#2
|
||||
|
||||
![]() Если достаточно того, чтоб CheckBox был без фокуса, можно его событии OnEnter прописать <TForm>.ActiveControl := nil;, если же надо, чтоб фокус оставался на предыдущем контроле, то тут можно "получить" предыдущий активный контрол и в событии OnEnter CheckBox-а прописать вместо nil прошлый контрол.
Ну и "убить" TabStop (=false) Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#3
|
|||
|
|||
![]() а как прописать <TForm>.ActiveControl := nil;,?.т.е куда?Можно примерчик...
Последний раз редактировалось txforce, 14.03.2011 в 16:45. |
#4
|
||||
|
||||
![]() заместо <TForm> класс твоей формы. Т.о.: Form1.ActiveControl := nil;
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#5
|
|||
|
|||
![]() Цитата:
Check := TCheckBox.Create(Self); Check.Parent := Panel; Check.Left := 5; Check.Top := 5; Check.Caption := 'RunFat'; ? |
#6
|
||||
|
||||
![]() событие OnChange.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#7
|
|||
|
|||
![]() Код:
............... procedure Change(Sender: TObject); ........... procedure TForm1.Change(Sender: TObject); begin Form1.ActiveControl := nil; end; ......... begin Check := TCheckBox.Create(Self); Check.Parent := Panel; Check.Left := 5; Check.Top := 5; Check.Caption := 'RunFat'; Check.OnClick = Change; end; Последний раз редактировалось Assistant, 14.03.2011 в 18:04. |
#8
|
|||
|
|||
![]() неполучается так
|
#9
|
|||
|
|||
![]() не может этого быть
|
#10
|
|||
|
|||
![]() серьёзно невыходит(((((получается так, что не могу поставить галочку...
Последний раз редактировалось txforce, 14.03.2011 в 18:04. |
#11
|
|||
|
|||
![]() поправил код, забыл что у TCheckBox нет события OnChange, заменил на OnClick
|
#12
|
||||
|
||||
![]() Цитата:
![]() ![]() Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#13
|
|||
|
|||
![]() Цитата:
![]() ![]() |
#14
|
|||
|
|||
![]() от дурная голова, заработался на PHP совсем за 2 недели
|
#15
|
||||
|
||||
![]() Должен признать свою неправоту. Как вфыяснилось при написании тест-программы, первым срабатывает OnEnter, а потом уже OnClick - если в OnEnter делать Form.ActiveControl := nil, то у данного чекбокса не срабатывает OnClick и соответственно состояние флажка не меняется
![]() ![]() Надо поразмышлять. Извиняйте ![]() Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |