Главная страница
    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.45 MB
Время: 0.011 c
15-1146304680
Gast
2006-04-29 13:58
2006.05.28
Proxy


2-1147531542
AlexanderMS
2006-05-13 18:45
2006.05.28
Проблема. Программа "не успевает" вывести Hint в StatusBar.


2-1147343353
legran
2006-05-11 14:29
2006.05.28
Перехват сообщений чужому окну D2005


2-1147282253
DAn13
2006-05-10 21:30
2006.05.28
forma


15-1146549877
КаПиБаРа
2006-05-02 10:04
2006.05.28
Куда все спешат?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский