高分请教高手:DBGRID在设计状态时按右键弹出一个POPUPMENU是在哪个事件里写的?(在线)(100分)

  • 主题发起人 主题发起人 peterzhou20
  • 开始时间 开始时间
P

peterzhou20

Unregistered / Unconfirmed
GUEST, unregistred user!
想自己做一个控件,实现象DBGRID在设计状态时按右键弹出一个POPUPMENU,请问高手这个是在哪个事件里写的?(请给出单元名、过程名)
多谢!
另:为什么我每个问题都结了贴,为什么信誉分老不加呢?
 
你说的是属性编辑器(DesignEditor),OpenTool 的范畴,看看Kingron的宝典里
面的相关章节

另:没有什么信誉分,就算有也没有人真的理它
 
这个应该是组件编辑器,所有的组件编辑器都是从TComponentEditor派生出来的,它是在DesignEditors单元
中定义的(D7中),如果你要做一个这样的组件编辑器,从TComponentEditor派生一个,然后用
RegisterComponentEditor方法把你派生出来的类注册就可以了
下面是TComponentEditor的声明,部分注释如下
TComponentEditor = class(TBaseComponentEditor, IComponentEditor)
private
FComponent: TComponent; //点击右键弹出菜单的组件
FDesigner: IDesigner;
public
constructor Create(AComponent: TComponent; ADesigner: IDesigner); override;
procedure Edit; virtual; //双击组件执行的动作
procedure ExecuteVerb(Index: Integer); virtual; //不同菜单对应的操作,由Index来判断做什么样的操作
function GetComponent: TComponent;
function GetDesigner: IDesigner;
function GetVerb(Index: Integer): string; virtual; //确定显示的菜单名
function GetVerbCount: Integer; virtual; //要加入菜单的项数
function IsInInlined: Boolean;
procedure Copy; virtual;
procedure PrepareItem(Index: Integer; const AItem: IMenuItem); virtual; //准备菜单,可以为加入的菜单项加图片等
property Component: TComponent read FComponent;
property Designer: IDesigner read GetDesigner;
end;
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部