【问题标题】:Changing tab captions of Tabbed Document Interface at run-time在运行时更改选项卡式文档界面的选​​项卡标题
【发布时间】:2013-09-12 22:51:07
【问题描述】:

我有一个所有 MDI 子窗体都继承自的基本窗体。 OnCreate 调用通知主窗体需要创建一个新选项卡。该选项卡的标题使用 MDIChild 的标题。

当子窗口标题在运行时更改时,我如何捕获或通知以便其相应的选项卡可以更新为新标题?

寻找类似于主窗体的 WindowMenu 属性如何工作的东西。

我尝试在主窗体中捕获 WM_MDISETMENU 消息,但没有成功:

过程 TMainForm.WMMDISetMenu(var Msg: TWMDISetMenu);消息 WM_MDISETMENU;

我研究过高低,但无济于事。那里有真正的答案吗?

【问题讨论】:

  • “运行时更改子窗口标题”如何?你在做什么来改变这个标题?
  • 我不知道它是否能解决您的问题,但WM_MDISETMENU 不会发送到您的主表单。它被发送到 MDI 客户端。您需要子类化 MDI 客户端,不幸的是 ClientWndProc 在 D7 中不是虚拟的。
  • Ken,在DataSource的OnDataChange事件上,更改标题以表示当前的Order ID等

标签: delphi delphi-7


【解决方案1】:

由于您已经对子窗口类进行了子类化,您所要做的就是处理wm_SetText 消息。调用继承的处理程序,然后更新选项卡标题。

【讨论】:

  • 谢谢罗伯!这样就完成了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-08
相关资源
最近更新 更多