popmenu怎样动态添加菜单项。
with qry2 do
begin
close;
sql.clear;
sql.add('select 职员名称 from 职员表');
Open
while not eof do
begin
{把职员名称加入菜单} 这里该怎样加入菜单项
end;
end;
with qry2 do
begin
close;
sql.clear;
sql.add('select 职员名称 from 职员表');
Open
while not eof do
begin
{把职员名称加入菜单} 这里该怎样加入菜单项
end;
end;
解决方案 »
- Delphi keybd_event方法模拟按下冒号(:)和反斜杠(\)
- 查看变量的内存地址
- 通过互联网远程联接数据库
- dbgrid 中当自动调用post时rows不能定位的问题
- 一個奇怪的錯誤,有誰知道嗎?(重分相謝)
- 当程序全屏时如何解决程序上的东西按比例的移动?
- 挺不好意思的问题(关于动态创建控件的问题)!!!!!!!
- MDI架构中,主Form的action的ONexecute根据子窗口动态改变dataset?
- 使用autovue 内置浏览器,出现无法浏览多工作簿的EXCEL,只能浏览第一个工作簿,其他的无法浏览
- delete键怎么就锁不住的呢
- 100 分求简单问题 动态生成的TButton的显示问题 进来有分
- 怎样检查一个字符串是一个有效的路径?
var
index: Integer;
NewItem: TMenuItem;
begin
for index := 0 to 3 do
begin
NewItem := TMenuItem.Create(PopupMenu1); // create the new item
PopupMenu1.Items.Add(NewItem);// add it to the Popupmenu
NewItem.Caption := 'Menu Item ' + IntToStr(index);
NewItem.Tag := index;
NewItem.OnClick = PopupMenuItemsClick;// assign it an event handler
end;end;procedure TForm1.PopupMenuItemsClick(Sender: TObject);
begin
with Sender as TMenuItem do
begin
case Tag of
0: ShowMessage('first item clicked');
1: ShowMessage('second item clicked');
2: ShowMessage('third item clicked');
3: ShowMessage('fourth item clicked');
end;
end;
end;To edit or destroy an item, grab its pointer via the Items property.procedure TForm1.EditButtonClick(Sender: TObject);
var
ItemToEdit: TMenuItem;
begin
ItemToEdit := PopupMenu.Items[1];
ItemToEdit.Caption := 'Changed Caption';
}procedure TForm1.DestroyButtonClick(Sender: TObject);
var
ItemToDelete: TMenuItem;
begin
ItemToDelete := PopupMenu.Items[2];
ItemToDelete.Free;
end;
NewItem:Tmenuitem;
beginNewItem:=TMenuItem.Create(self);
NewItem.Caption:='test';
NewItem.Tag:=1;
//Newitem.OnClick:=MyClick;
Mainmenu1.Items.Add(NewItem);
end;
popmenu也一样。