Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Вниз

Программное создание меню 


easy   (2002-04-12 19:22) [0]

Подскажите, пожалуйста, как программно создать массив элементов меню, чтобы потом можно было обращаться к каждому элементу по его индексу, типа, как в бейсике:

Private Sub s01_Click(Index As Integer)

End Sub



Poirot   (2002-04-12 21:02) [1]

Зачем??????????????? Если нет, то есть другой способ!!!!



olookin   (2002-04-13 09:32) [2]

Например так:

//уже есть какое-то MainMenu например MainMenu1
//в котором есть пункт "Новые элементы меню"
//(и этот пнукт первый по счету)
//причем вставлять новые итемы хочется именно в этот пункт

//глобальный массив
var m: array of TMenuItem;

//новый итем вставляется при нажатии на кнопку
procedure TForm1.Button1Click(Sender: TObject);
begin
Setlength(m,Mainmenu1.Items.Items[0].Count+1);
m[Length(m)-1]:=TMenuitem.Create(Mainmenu1);
Mainmenu1.Items.Items[0].Add(m[Length(m)-1]);
m[Length(m)-1].Caption:="New item"+inttostr(Length(m));
m[Length(m)-1].Tag:=Length(m)-1;
//назначаем новому итему процедуру на событие OnClick
m[Length(m)-1].OnClick:=CommonActionClick;
end;

//а это общая процедура для всех новых итемов,
//в которой действие зависит (в данном случае) от
//значения тага итема, вызвавшего эту процедуру
procedure TForm1.CommonActionClick(Sender: TObject);
begin
showmessage(inttostr((sender as tmenuitem).Tag));
end;



easy   (2002-04-13 11:16) [3]

Большое спасибо!!!




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.037 c
14-81069          Oleg_V                2002-03-19 05:45  2002.04.25  
Братья програмеры помогите, как зделать форму с неровными краями!!???


14-81052          Наивный               2002-03-18 22:52  2002.04.25  
Пожалуйста помогите или дайте совет по этой теме!


14-81063          vopros                2002-03-19 15:20  2002.04.25  
Кто как отдыхает после тяжелой нашей работы?


1-80995           Emstem                2002-04-12 14:05  2002.04.25  
Генерация событий в классе


1-80850           easy                  2002-04-12 19:22  2002.04.25  
Программное создание меню