在treeview中,如何实现动态右键菜单?在线等

wukang 2003-08-22 12:31:49
在treeview中有不同的主键,我想在右击不同的主键时启动不同的菜单,就象WINDOWS的资源管理器一样,如何实现?
...全文
140 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
myadvice 2003-08-22
  • 打赏
  • 举报
回复
不知道楼主试过: lxpbuaa兄的方法没有,这种方法有时很管用哦
xiaoyuer0851 2003-08-22
  • 打赏
  • 举报
回复
呵呵,同意楼上的 俩位,自己根据条件来写代码
wukang 2003-08-22
  • 打赏
  • 举报
回复
但是这样得不到右键选中的主键的句柄,得到的是用先前用左键选取的主键的句柄
Little2000 2003-08-22
  • 打赏
  • 举报
回复
那你就在treeview控件的MouseDown事件下写吧,该事件可以选择右键和左键,然后显示自己的功能就可以了。
lxpbuaa 2003-08-22
  • 打赏
  • 举报
回复
procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if mbRight = Button then with TreeView1 do
begin
if () then PopupMenu := PopupMenu1
//else ……
Selected := GetNodeAt(X, Y);
end;
end;

————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
mrtxc 2003-08-22
  • 打赏
  • 举报
回复
同意 lxpbuaa(桂枝香在故国晚秋)
UP
shadowfish 2003-08-22
  • 打赏
  • 举报
回复
由选定的node判断
DWGZ 2003-08-22
  • 打赏
  • 举报
回复
菜单最好是一个, 我用程序都喜欢用Action
每个菜单项对应一个Action

procedure TForm1.Action1Update(Sender: TObject);
begin
TAction(Sender).Visible := yourcondition;
end;

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧