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

Вниз

Вопрос по меню   Найти похожие ветки 

 
КАРО   (2007-01-31 09:33) [0]

Есть меню, состоящее из некоторого числа подменю, допустим их 10. Как бы сделать покрасивше такую штуку: когда выбран определенный пункт меню делать его неактивным, остальные соответственно активные, выбираем другой пункт меню - он становится неактивным, остальные - активные. Можно конечно тупо под каждую менюшку написать чтото типа:

Menu1.Enable := Flase;
          Menu2.Enable := True;
          Menu3.Enable := True;
            ..............
          Menu10.Enable := True;


но это блин такой код длинный и некрасивый получается, может можно как-то поэлегантнее? :)


 
Separator ©   (2007-01-31 09:35) [1]

перебрать все дочернии объекты родительсткого меню и выставить enable:= true, а у объекты вызвавшего эту процедуру выставить enable:= false


 
Tornado ©   (2007-01-31 09:39) [2]

> Separator ©   (31.01.07 09:35) [1]

хм...маленький примерчик бы... :)


 
Elen ©   (2007-01-31 10:02) [3]


> хм...маленький примерчик бы... :)

Не вопрос : Эту проц ты должен определить для всех пунктов меню.

procedure TForm1.N4Click(Sender: TObject);
var i:integer;
begin
//********* FOR ******************
for i :=0  to TMenuItem(sender).Parent.Count-1  do
begin
TMenuItem(sender).Parent.Items[i].Enabled:=true;
end;
//******* END FOR ****************{}
TMenuItem(sender).Enabled:=false;
end;


 
Tornado ©   (2007-01-31 11:44) [4]

вот спасиба!



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

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

Наверх




Память: 0.47 MB
Время: 0.047 c
2-1170165325
Arm79
2007-01-30 16:55
2007.02.18
Каким способом лучше всего собрать из байтов Integer?


9-1143460990
KiberKot
2006-03-27 16:03
2007.02.18
убийство спрайтов


2-1170158867
fisherman
2007-01-30 15:07
2007.02.18
Печать этикеток в Делфи


15-1169709149
Ega23
2007-01-25 10:12
2007.02.18
Что может выбить систему до BSOD?


1-1166783436
STIK
2006-12-22 13:30
2007.02.18
Сохранение компоненты.