Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

PopupMenu+DBTable формирование меню на основе таблици [D7, MSAccess]


Lex_! ©   (2006-05-04 11:50:00) 

Куда копать скажите?.. не могу что то сообразить ..


Lex_!   (2006-05-07 07:40:00) [1]

По тегу я сделал, до этого то я додумался.:)


Хозяин   (2006-05-05 09:56:00) [2]

А по клику анализируй либо по caption, либо
...
MenuItem.tag:=1;
...
MenuItem.tag:=2;
...
по тегу


Johnmen   (2006-05-05 09:50:00) [3]


> но после добавления то его снова использовать можно


Ни его, ёлы-палы, а вспомогательную переменную!


> этот же объект создаеш заново и добавляеш.


Не этот же! А новый, того же класса!


Lex_!   (2006-05-05 09:47:00) [4]

Нет, Создается элемент меню, но после добавления то его снова использовать можно, этот же объект создаеш заново и добавляеш.
Имелось ввиду
mn1
mn2
mn3
и т.д. а можно обойтись одним ..:)


Johnmen   (2006-05-05 09:24:00) [5]


>  на каждый элемент меню, создавать объект,


Именно так.


Lex_!   (2006-05-05 09:14:00) [6]

Во. я про что и спрашивал, Ндо на каждый элемент меню, создавать объект, или одного хватит. Одного значит хватит. вопросов нет всем спасибо :)


Johnmen   (2006-05-04 17:01:00) [7]

var MenuItem : TMenuItem;

MenuItem:=TMenuItem.Create(PopupMenu);
MenuItem.Caption:='Lex_!_1';
PopupMenu.Items.Add(MenuItem);

MenuItem:=TMenuItem.Create(PopupMenu);
MenuItem.Caption:='Lex_!_2';
PopupMenu.Items.Add(MenuItem);

MenuItem:=TMenuItem.Create(PopupMenu);
MenuItem.Caption:='Lex_!_3';
PopupMenu.Items.Add(MenuItem);

.........


Lex_!   (2006-05-04 16:46:00) [8]

Точнее меня интерисует само добавление как таковое к меню. динамическое когда неизвестно сколько их всего ..


Lex_!   (2006-05-04 16:37:00) [9]

Тогда пример конкретно вместе с добавлением если можно. ибо до меня не доходит.


Johnmen   (2006-05-04 16:34:00) [10]

Зачем ещё какой-то массив???
Уже отвечено ЮЮ ©   (04.05.06 12:00) [2]


Lex_!   (2006-05-04 16:16:00) [11]

Тоесть теоретически:

> mnu:array of TMenuItem
> SetLength(mnu,AdoTable.RecordCount);


должно работать? (в менюитеме есть добавление такого массива...)


Johnmen   (2006-05-04 15:45:00) [12]

Ничто же не мешает насоздавать столько TMenuItem'ов, сколько надо?


Lex_!   (2006-05-04 15:40:00) [13]

Запихать надо с одного поля данных. DBTable = ADOTable
Неизвестно сколько их должно быть, этих пунктов меню... а для каждого пункта нужно я так понимаю TMenuItem или один такой элемент после добавления можно снова использовать для следующей записи?


ЮЮ   (2006-05-04 12:26:00) [14]

Может, поэтому прав Sergey13 ©   (04.05.06 11:52) [1] :)


MsGuns   (2006-05-04 12:16:00) [15]

Может, ему в меню надо запихать названия столбцов ?


ЮЮ   (2006-05-04 12:02:00) [16]

Кстати, что TDBTable это что за зверь такой?


ЮЮ   (2006-05-04 12:00:00) [17]

<очищаем PopupMenu>
DataSet.First;
While not DataSet.EOF do begin
 <если текущая запись должна быть включена, то вкючаем>
 DataSet.Next;
end;


Sergey13   (2006-05-04 11:52:00) [18]

2 Lex_! ©   (04.05.06 11:50)
>Куда копать скажите?
От забора и до вечера.


Наверх

Титульная страница Поиск, карта сайта Написать письмо