如何设置DBGRIDE的IndicatorTitle属性?

秋天之落叶 2018-07-05 01:53:06


请教一下,在DBGRIDEH中,设置了IndicatorTitle后,会出现上图的模式,而且点击1点击2会显示3。
现在我想只能点击1显示下面的剪切复制粘贴等,使得2不可显示,或使得2不能点击,也就是不想显示3的内容,有什么方法吗?
...全文
232 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
秋天之落叶 2018-07-12
  • 打赏
  • 举报
回复
引用 10 楼 BlueStorm的回复:
懂得反馈修改结果,也懂得感谢,还有不少的提问者真的应该向你学习一下。
只是习惯表达一下,过奖了
BlueStorm 2018-07-06
  • 打赏
  • 举报
回复
懂得反馈修改结果,也懂得感谢,还有不少的提问者真的应该向你学习一下。
秋天之落叶 2018-07-05
  • 打赏
  • 举报
回复
其实可以修改一下源码,在EditActions中加一个geacolumns属性,这样就可以设置了,哈哈
秋天之落叶 2018-07-05
  • 打赏
  • 举报
回复
感谢BlueStorm,配合EditActions完美解决!
秋天之落叶 2018-07-05
  • 打赏
  • 举报
回复
引用 6 楼 BlueStorm 的回复:
这个应该可以了:

type

TDBGridEh = Class(DBGridEh.TDBGridEh)
public
procedure DefaultBuildIndicatorTitleMenu(var PopupMenu: TPopupMenu); override;
end;

TForm1 = class(TForm)
...........

implementation

...........

procedure TDBGridEh.DefaultBuildIndicatorTitleMenu(var PopupMenu: TPopupMenu);
begin
inherited;
PopupMenu.Items[0].Visible := False;
end;


果然,哈哈,
BlueStorm 2018-07-05
  • 打赏
  • 举报
回复
这个应该可以了:

type

TDBGridEh = Class(DBGridEh.TDBGridEh)
public
procedure DefaultBuildIndicatorTitleMenu(var PopupMenu: TPopupMenu); override;
end;

TForm1 = class(TForm)
...........

implementation

...........

procedure TDBGridEh.DefaultBuildIndicatorTitleMenu(var PopupMenu: TPopupMenu);
begin
inherited;
PopupMenu.Items[0].Visible := False;
end;

秋天之落叶 2018-07-05
  • 打赏
  • 举报
回复
引用 4 楼 lyhoo163 的回复:
因为columns.visible和copy等项目在一起的。
所以。你的效果需要,通过opupMenu1,设置 你要的菜单项目,再通过上述设置。就是你的效果了。

哦,您的意思是由于visible columns和copy等项目在一起,没办法单独屏蔽其中一项,只能是全部屏蔽了,然后自己做一个弹出式菜单,自己添加copy等选项?
其实我已经有了弹出菜单,就是没有copy什么的,只是觉得这是原装的,如果能设置,省很多事。
看来不能单独实现屏蔽一项内容了,只能自己在增加一些项目了。
lyhoo163 2018-07-05
  • 打赏
  • 举报
回复
因为columns.visible和copy等项目在一起的。
所以。你的效果需要,通过opupMenu1,设置 你要的菜单项目,再通过上述设置。就是你的效果了。
lyhoo163 2018-07-05
  • 打赏
  • 举报
回复
1、做一个菜单PopupMenu1,加入若干菜单项目
2、设置DBGridEh的IndicatorTitle
(1)DropdownMenu=popmenu1
(2)Showdropdownsign=true
(3)Titlebutton=true
(4)Usesglobamenu =false
秋天之落叶 2018-07-05
  • 打赏
  • 举报
回复
引用 1 楼 BlueStorm 的回复:
DBGRIDEH.IndicatorTitle.UseGlobalMenu := False

设置这个后,1就点不开了。
IndicatorTitle下的三个参数都试过了,都不是。
试了试columns下的属性,也不是,不知道是那个在控制columns.visible?
BlueStorm 2018-07-05
  • 打赏
  • 举报
回复
DBGRIDEH.IndicatorTitle.UseGlobalMenu := False

5,379

社区成员

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

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