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

Вниз

Menu   Найти похожие ветки 

 
hprx   (2007-08-27 22:30) [0]

Здравствуйте. В меню имеется подменю (около 10 сторок). При выборе одного возле него должна ставиться галочка (Checked:=True), а прошлого убираться. Конечно, можно написать очень много такого типа:

procedure TForm1.N1Click(Sender: TObject);
begin
N1.Checked:=True;
N2.Checked:=False;
N3.Checked:=False;
  ............
end;

procedure TForm1.N2Click(Sender: TObject);
begin
N1.Checked:=False;
N2.Checked:=True;
N3.Checked:=False;
  ............
end;

procedure TForm1.N3Click(Sender: TObject);
begin
N1.Checked:=False;
N2.Checked:=False;
N3.Checked:=True;
  ............
end;
и  так далее...

Но может есть более рациональный способ?


 
@!!ex ©   (2007-08-27 22:33) [1]

1)
Вынести в отдельную процедуру снятие галочек со всех элементов.
И при клике на элементе вызывать это процедурку и ставить галку на элемент.

2) Хранить указатель на контрол, на котором сейчас галка, при клике снимать с него галку, ставить галку на выбранный и менять указатель на него.

Лично я пользуюсь первым вариантом.


 
Anatoly Podgoretsky ©   (2007-08-27 22:35) [2]

> @!!ex  (27.08.2007 22:33:01)  [1]

Нормальные герои всегда идут в обход.

RadioItem


 
@!!ex ©   (2007-08-27 22:37) [3]

> [2] Anatoly Podgoretsky ©   (27.08.07 22:35)

Ну да, подумал об этом, но автору то нужно именно так.. хотя может у меня телепатор сломался...

Личноя пользуюсь приведенным способом для снятия галочек в списке...


 
hprx   (2007-08-27 22:46) [4]

А что это за свойство RadioItem?


 
Anatoly Podgoretsky ©   (2007-08-27 23:05) [5]

> hprx  (27.08.2007 22:46:04)  [4]

Это свойство TMenuItem


 
@!!ex ©   (2007-08-27 23:18) [6]

> [4] hprx   (27.08.07 22:46)

Выставляешь элементам свойство RadioItem(где оно - смотри в хелпе), и всем элементам, между которыми должно переключаться, нужно выставить одинаковый GroupIndex, по моему. Хотя может он по другому называеться, копай в хелпе.


 
hprx   (2007-08-27 23:45) [7]

Спасибо @!!ex


 
@!!ex ©   (2007-08-27 23:46) [8]

> [7] hprx   (27.08.07 23:45)

Анатолию спасибо, он на это указал, а не я. Я всего лишь расписал.



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1184344305
Makhanev Alexander
2007-07-13 20:31
2007.09.23
OnStop в службе...


15-1188284319
novill
2007-08-28 10:58
2007.09.23
Кто-нибудь пользуется закладкой Diargam Page в окне Code Editor?


8-1166262763
niko
2006-12-16 12:52
2007.09.23
Загрузка BitMap а и вывод его на форму в Си


2-1188239126
Евгений Р.
2007-08-27 22:25
2007.09.23
Вертикальный текст


8-1164002284
ka1n
2006-11-20 08:58
2007.09.23
как подключить визуальные плагины от Winamp?