Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.054 c
15-1170063252
sniknik
2007-01-29 12:34
2007.02.18
Подработка.


3-1164264466
pavel_guzhanov
2006-11-23 09:47
2007.02.18
Как сделать, чтобы если в диалоге ввода логина и пароля


3-1164260869
ValexWeb
2006-11-23 08:47
2007.02.18
Как с помощью компоненты TABLE узнать номер текущей отображаемой


2-1169992592
Cj
2007-01-28 16:56
2007.02.18
Thread->process


2-1170149118
myaucher
2007-01-30 12:25
2007.02.18
Использование Data Module




   Наверх