工具栏中的按钮mousemove信息如何发送到状态栏panels(2)中

antony521 antony521 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
程序主界面是顶层表单,创建了一个工具栏类(包括几个按钮),类中添加一个用于保存父表单对象的属性(oMainform),请问如何在类中的按钮mousemove事件中调用父表单控件的事件?
**************************************************
*-- 类: mytoolbar (h:\users\ant\desktop\工具栏与状态栏沟通试验\myvcx.vcx)
*-- 父类: toolbar
*-- 基类: toolbar
*-- 时间戳: 03/28/14 07:27:10 PM
*
DEFINE CLASS mytoolbar AS toolbar


Caption = "Toolbar1"
Height = 31
Left = 0
Top = 0
Width = 117
ShowWindow = 1
omainform = .F.
Name = "mytoolbar"


ADD OBJECT command1 AS commandbutton WITH ;
AutoSize = .T., ;
Top = 3, ;
Left = 5, ;
Height = 25, ;
Width = 54, ;
Caption = "代图标1", ;
Name = "Command1"


ADD OBJECT command2 AS commandbutton WITH ;
AutoSize = .T., ;
Top = 3, ;
Left = 58, ;
Height = 25, ;
Width = 54, ;
Caption = "代图标2", ;
Name = "Command2"


PROCEDURE Init
Parameter oform
This.omainform=oform &&通过omainform属性来引用父表单上所有一切。
ENDPROC


PROCEDURE command1.Click
*!* do form forms\frm销售管理
ENDPROC


PROCEDURE command1.MouseMove
LPARAMETERS nButton, nShift, nXCoord, nYCoord
oMainForm.statusbar.panels(2).text="对商品的销售信息进行管理"
ENDPROC


PROCEDURE command2.Click
*!* do form forms\frm订单
ENDPROC


PROCEDURE command2.MouseMove
LPARAMETERS nButton, nShift, nXCoord, nYCoord
oMainForm.statusbar.panels(2).text="增加、修改、删除商品信息"
ENDPROC


ENDDEFINE
*
*-- EndDefine: mytoolbar
**************************************************


PUBLIC oform1

oform1=NEWOBJECT("form1")
oform1.Show
RETURN


**************************************************
*-- Form: form1 (h:\users\ant\desktop\工具栏与状态栏沟通试验\mainform.scx)
*-- 父类: form
*-- 基类: form
*-- 时间戳: 03/28/14 07:23:00 PM
*
DEFINE CLASS form1 AS form


Top = 0
Left = 0
Height = 609
Width = 1007
ShowWindow = 2
DoCreate = .T.
Caption = "Form1"
toptoolbar = .F.
Name = "Form1"


ADD OBJECT statusbar AS olecontrol WITH ;
Top = 581, ;
Left = 0, ;
Height = 28, ;
Width = 1007, ;
Align = 2, ;
Name = "statusbar"


PROCEDURE Activate
This.TopToolBar = NewObject("MyToolBar","MyVcx") &&CreateObject
This.TopToolBar.show()
This.TopToolBar.dock(0)
ENDPROC


PROCEDURE Init
SET DEFAULT TO SYS(5)+SYS(2003)
ENDPROC


ENDDEFINE
*
*-- EndDefine: form1
**************************************************

oMainForm.statusbar.panels(2).text=" ……" 就这两句代码。
mousemove代码部分显示错误:找不到对象omainform。
请名位高手帮忙指教一下,应该怎样改才能在状态栏panels(2)中正确显示出来。
我的系统是win7+VFP9 SP2 7423
...全文

相关推荐

增强treeview和outlook主界面,有状态栏和工具栏

增强treeview和outlook主界面,有状态栏和工具栏"这个主题主要关注于提升Windows应用程序中的两个关键组件:TreeView控件和Outlook式主界面,并且引入了状态栏和工具栏来提供更丰富的交互功能

wcg_i_gcw

TMS VCL UI Pack 13.5.9.0:Delphi高DPI与IDE稳定性终极补丁

VCL是Windows原生GUI开发的核心技术栈,其本质是直接调用USER32/GDI32 API的轻量级框架,而非过时遗产。理解VCL的渲染原理与IDE集成机制,是解决控件丢失、高DPI模糊、设计时崩溃等工程痛点的前提。TMS VCL UI Pack通过Direct2D硬件加速渲染、HWND子类化消息钩子、强化组件注册签名等底层技术,在不改变原有VCL项目结构的前提下,实现UI现代化升级与IDE稳定性保障。它特别适用于需长期维护的医疗、工业、金融类Delphi遗留系统,支持平滑过渡至Windows 11暗

weixin_34195142

TMS VCL UI Pack 13.5.9.0:Delphi 13.1现代化UI升级方案

VCL是Delphi桌面开发的核心框架,但原生控件长期存在高DPI适配差、Windows 11视觉不兼容、IDE控件丢失等工程痛点。TMS VCL UI Pack通过非侵入式皮肤引擎与行为注入机制,在不重构业务逻辑前提下实现界面现代化,其版本号13.5.9.0精准对应Delphi 13.1运行时库(d131.bpl),解决控件注册脆弱、设计时崩溃等典型问题。该方案兼顾稳定性与可维护性,广泛应用于医疗、工业HMI等需长期运行的VCL遗留系统升级场景,是当前VCL生态中平衡性能、兼容性与商业支持的主流选择。

weixin_34208185

delphi7_对话框_工具栏_状态栏设计源码.rar

2. 工具栏(Toolbars):工具栏是应用程序界面中常见的组件,用于放置常用的功能按钮,提高用户的操作效率。

阿莫惜霖

Visual C++从入门到精通视频教程下载第07章 工具栏和状态栏.zip

**部分划分**: 状态栏通常被划分为多个部分(Panels),每个部分可以显示不同的信息。每个部分有自己的ID,可以独立更新内容。3.

programyg
评论 9
收藏 已收藏
分享
返回顶部
antony521
VFP 2,750 成员 29,142 内容