【PB案例学习笔记】-27制作一个控制任务栏显示与隐藏的小程序

写在前面

这是PB案例学习笔记系列文章的第27篇,该系列文章适合具有一定PB基础的读者。

通过一个个由浅入深的编程实战案例学习,提高编程技巧,以保证小伙伴们能应付公司的各种开发需求。

文章中设计到的源码,小凡都上传到了gitee代码仓库https://gitee.com/xiezhr/pb-project-example.git

需要源代码的小伙伴们可以自行下载查看,后续文章涉及到的案例代码也都会提交到这个仓库【pb-project-example

如果对小伙伴有所帮助,希望能给一个小星星⭐支持一下小凡。

一、小目标

通过本案例我们将制作一个能够隐藏任务栏和显示任务栏的小程序。最终效果如下所示

二、创作思路

Windwos操作系统的任务栏是以Shell_TrayWnd为名称的窗口对象,利用user32.dll提供的FindWindowExA外部扩展函数

可以获取任务栏的句柄,在利用外部函数ShowWindow外部扩展函数就可以控制任务栏的隐藏和显示。

三、创建程序基本框架

① 新建examplework工作区

② 新建exampleapp应用

③ 新建w_main窗口,并将其Title设置为"隐藏和显示任务栏"

由于文章篇幅原因,以上步骤不再赘述。如果小伙伴忘记怎么操作,可以翻一翻该系列第一篇文章复习一下

④ 布局控件

w_main窗口上新建2个CommandButton控件,名称依次为cb_1cb_2.其Text值分别为"隐藏任务栏"和"显示任务栏"

调整位置,使其布局如下图所示

⑤ 保存窗口

四、编写代码

① 定义实例变量

java 复制代码
Constant Long SW_HIDE = 0 
Constant Long SW_NORMAL = 1 
Constant Long SW_SHOWMINIMIZED = 2 
Constant Long SW_SHOWMAXIMIZED = 3 
Constant Long SW_SHOWNOACTIVATE = 4 
Constant Long SW_SHOW = 5 
Constant Long SW_MINIMIZE = 6 
Constant Long SW_SHOWMINNOACTIVE = 7 
Constant Long SW_SHOWNA = 8 
Constant Long SW_RESTORE = 9 
Constant Long SW_SHOWDEFAULT = 10 

String ls_ShellTaskBarWnd = "Shell_TrayWnd" 
String ls_null

Long ll_HTaskBar, ll_HDeskTop 

② 定义外部函数

java 复制代码
//获取窗口句柄
Function long FindWindowExA ( long hWnd, long hWndChild, ref string lpszClassName, ref string lpszWindow) library 'user32' 
//根据窗口句柄设置任务栏状态
Function long ShowWindow (long hWnd, long nCmdShow ) library 'user32' 

③ 在按钮cb_1clicked事件中添加如下代码

java 复制代码
ll_HTaskBar = FindWindowExA( 0, 0, ls_ShellTaskBarWnd, ls_Null ) 
ShowWindow( ll_HTaskBar, SW_HIDE ) 
MessageBox( '提示', '任务栏不见了!' ) 

④ 在按钮cb_2clicked事件中添加如下代码

java 复制代码
ll_HTaskBar = FindWindowExA( 0, 0, ls_ShellTaskBarWnd, ls_Null ) 
ShowWindow( ll_HTaskBar, SW_SHOW ) 
MessageBox( '提示', '任务栏又出现了!' ) 

⑤ 在开发界面左边的System Tree窗口中双击exampleapp应用对象,并在其open事件中添加如下代码

java 复制代码
open(w_main)

五、运行程序

经过一波操作,我们来检验下最终的劳动成果

本期内容到这儿就结束了 ★,° :.☆( ̄▽ ̄)/$:.°★ 。 希望对您有所帮助

我们下期再见 ヾ(•ω•`)o (●'◡'●)

相关推荐
xiezhr1 个月前
花了一天时间帮财务朋友开发了一个实用小工具
实用工具·pb·powerbuilder·财务报表
淘源码d2 个月前
云HIS综合管理系统源码,云端SaaS服务,与监管系统有序对接,扩展性强
云计算·源码·云his·his系统·his·智慧医院·基层医院
弗锐土豆2 个月前
消息中间件ApacheKafka在windows简单安装
zookeeper·kafka·安装·运行·windwos
tjsoft2 个月前
使用笔记之-PB微信支付&支付宝支付源代码
笔记·微信·支付宝·源代码·pb·汇通软件·聚合支付
xie_zhr3 个月前
【PB案例学习笔记】-21小大写金额转换
his系统·pb·powerbuilder·pb案例学习笔记·pb案例学习
xie_zhr4 个月前
【PB案例学习笔记】-13 徒手做个电子时钟
his系统·pb·powerbuilder·pb案例学习
xiezhr4 个月前
【PB案例学习笔记】-02 目录浏览器
his系统·pb·powerbuilder·pb案例学习笔记
xiezhr4 个月前
【PB案例学习笔记】-01创建应用、窗口与控件
his系统·pb·powerbuilder·pb案例学习笔记
禾高网络4 个月前
陪诊系统|陪诊小程序成品|陪诊系统功能
java·小程序·his系统