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

Вниз

Как выполнить AutoCheck всех пунктов MainMenu!   Найти похожие ветки 

 
mctarik ©   (2006-05-09 07:53) [0]

Здравствуйте уважаемые!

Есть MainMenu1 с несколькими MenuItem (12 пунктов меню)
А Теперь вопрос:

Как при AutoCheck последнего пункта сделать срабатывание AutoCheck
оставшихся 11 пунктов меню?

Типа этого
***
if AllCheck.AutoCheck then ... {оставшихся 11 пунктов}
***

Я понимаю что надо создать массив MenuItem"ом, не пока опыта в создании
подобного очень мало, вернее совсем Нет!

С Уважением mctarik!


 
AlexanderMS ©   (2006-05-09 08:53) [1]


> Как при AutoCheck последнего пункта сделать срабатывание
> AutoCheck
> оставшихся 11 пунктов меню?


В смысле, срабатывание?

ПунктX.Autocheck := true?


 
mctarik ©   (2006-05-09 20:00) [2]


> AlexanderMS ©   (09.05.06 08:53) [1]

В смысле как нажать сразу все 11 пунктов меню при нажатии 12 того путкта.


 
AlexanderMS ©   (2006-05-09 20:07) [3]

Тогда при чём здесь AutoCheck? Нужно вызвать обработчик OnClick, а если пункты - пункты-переключатели, то установить ПунктX.Checked := not ПунктX.Checked.


> Я понимаю что надо создать массив MenuItem"ом


Верно, нужно при инициализации приложения (событие OnCreate формы) сделать
ArMn[1] := Пункт1;
ArMn[2] := Пункт2;
...........................
ArMn[12] := Пункт12;


Предварительно указать

Var ArMn : array[1..12] of TMenuItem.

Затем работать с циклами.


 
jb   (2006-05-09 20:30) [4]

Короче допустим у тебя есть MenuItem1:TMenuItem - он находится в строке меню, когда на него жмешь выплывает SubMenu, в нем 12 пунктов, если выбран 12-й то надо проставить или убрать галочки всех 12:

 for i:=0 to MenuItem1.Count-2 do
 begin
   MenuItem1.Items[i].Checked:=TMenuItem(Sender).Checked;
   // если надо, можно вызвать OnClick каждого MenuItem
   if Assigned(MenuItem1.Items[i].OnClick) then
     MenuItem1.Items[i].OnClick(MenuItem1.Items[i]);
 end;


 
mctarik ©   (2006-05-10 12:12) [5]

Спасибо!

А вам
> jb   (09.05.06 20:30) [4]

Огромное, всё Оке"й!



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
6-1138706724
Andrewk88
2006-01-31 14:25
2006.05.28
TWebBrowser


4-1141399908
Handle
2006-03-03 18:31
2006.05.28
Как завершить системныЙ процесс?


2-1147069409
konischev
2006-05-08 10:23
2006.05.28
О передаче данных из DLL в программу по событию


2-1147306113
rosl
2006-05-11 04:08
2006.05.28
enter


15-1145595332
MBo
2006-04-21 08:55
2006.05.28
Пятничные задачки для программистов.