zoukankan      html  css  js  c++  java
  • TREEVIEW右键菜单示例

    在 Form1 上拖一个 TreeView 控件,然后参考一下代码:

    unit Unit1;
        interface
        uses
          Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
          Dialogs, StdCtrls, Menus, ComCtrls;
        type
          TForm1 = class(TForm)
            TreeView1: TTreeView;
            function CreateMenu(pCation: string): TPopupMenu;
            procedure FormCreate(Sender: TObject);
            procedure TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
              Shift: TShiftState; X, Y: Integer);
          private { Private declarations }
          public { Public declarations }
        end;
        var
          Form1: TForm1;
        implementation
        {$R *.DFM}
    
        function TForm1.CreateMenu(pCation: string): TPopupMenu;
        var
          pPopupMenu:TPopupMenu;
          pMenu:TMenuItem;
          i:integer;
        begin
          pPopupMenu:=TPopupMenu.Create(self);
          for i:=0 to 5 do
          begin
            pMenu :=TMenuItem.Create(pPopupMenu);
            pMenu.Caption :=pCation+inttostr(i);
            pPopupMenu.Items.Add(pMenu);
          end;
          result:=pPopupMenu;
        end;
    
        procedure TForm1.FormCreate(Sender: TObject);
        begin
          TreeView1.Items.AddObject(nil,’test’,Pointer(CreateMenu(’test’)));
          TreeView1.Items.AddObject(nil,’xxx’,Pointer(CreateMenu(’xxx’)));
          TreeView1.Items.AddObject(nil,’ddd’,Pointer(CreateMenu(’ddd’)));
          TreeView1.Items.AddObject(nil,’ccc’,Pointer(CreateMenu(’ccc’)));
        end;
    
        procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
          Shift: TShiftState; X, Y: Integer);
        var
          pNode: TTreeNode;
        begin
          if button=mbright then
          begin
            pNode :=TreeView1.GetNodeAt(x,y);
            if (pNode〈〉nil) then
             TreeView1.PopupMenu :=TPopupMenu(pNode.data);
          end
        end;
        end.
    好的代码像粥一样,都是用时间熬出来的
  • 相关阅读:
    脚本 页面截取
    net Email 发送(借助第三方)
    查询表、存储过程、触发器的创建时间和最后修改时间(转)
    ActionScript简介
    mysql 1064 USING BTREE问题
    浅谈SQL SERVER函数count()
    程序员学习能力提升三要素
    构建杀手级应用的 JavaScript 框架、工具和技术
    javascript刷新页面方法大全
    html页<![if IE]>...<![endif]>使用解说
  • 原文地址:https://www.cnblogs.com/jijm123/p/13399862.html
Copyright © 2011-2022 走看看