【PB案例学习笔记】-40数据窗口缩放显示

写在前面

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

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

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

gitee代码仓库

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

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

一、小目标

通过本案例,我们将制作一个可以自由缩放的数据窗口程序。数据窗口左边和底部分别有一个拉条。
拉动垂直拉条上的游标时,数据窗口会翻页;拉动水平方向上的游标时,数据窗口会放大缩小。
最终实现效果如下
窗口缩放

二、制作思路

在本例中,我们可以通过HtrackBar控件来调节窗口的缩放率;通过VtrackBar控件来调节窗口的翻页数。

三、创建程序基本框架

有了基本思路之后,我们就动起来开始写程序了

① 新建examplework 工作区

② 新建exampleapp应用

③ 新建w_main窗口,并将其Title设置为"数据窗口缩放显示"

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

四、窗口界面设计

① 创建Grid风格的数据窗口对象
单击菜单栏上的file->new命令,选择Grid格式数据窗口,接着选择Quick Select 数据源
选择需要的表和字段
保存为d_emp
② 创建窗口控件
在窗口中添加1个StaticEdit控件,2个CommandButton控件、1个Data Window控件、1个HtrackBar控件和
一个VtrackBar控件。分别命名为st_1cb_1cb_2dw_1htb_1vtb_1
添加窗口控件
④ 设置控件属性

  • st_1控件的Text属性设置为数据窗口缩放显示
  • cb_1控件的Text属性设置为查询
  • cb_2控件的Text属性设置为退出
  • dw_1DataObject属性设置为d_emp,勾选TitleBar复选框,并将Title值设置为“缩放比率为100%”
    设置数据窗口属性
  • HtrackBar控件的MaxPosition属性设置为200

    ⑤ 保存窗口

五、编写代码

① 在w_main窗口的open事件中添加如下代码

htb_1.position=100
vtb_1.position=1

② 在cb_1控件的Click事件中添加以下代码

dw_1.settransobject(sqlca)
dw_1.retrieve()

③ 在w_main窗口的close事件中添加如下代码

close(parent)

④ 在htb_1控件的Moved事件中添加如下代码

dw_1.object.datawindow.zoom=this.position
dw_1.title="缩放率为"+string(position)+"100%"

⑤ 在htb_1控件的lineleft事件中添加如下代码

dw_1.object.datawindow.zoom=this.position
dw_1.title="缩放率为"+string(position)+"100%"

⑥ 在htb_1控件的lineright事件中添加如下代码

dw_1.object.datawindow.zoom=this.position
dw_1.title="缩放率为"+string(position)+"100%"

⑦ 在htb_1控件的pageleft事件中添加如下代码

dw_1.object.datawindow.zoom=this.position
dw_1.title="缩放率为"+string(position)+"100%"

⑧ 在htb_1控件的pageright事件中添加如下代码

dw_1.object.datawindow.zoom=this.position
dw_1.title="缩放率为"+string(position)+"100%"

⑨ 在vbt_1控件的Moved事件中添加如下代码

dw_1.scrolltorow(this.position)

⑩ 在vbt_1控件的pageup事件中添加如下代码

dw_1.scrolltorow(this.position)

⑪ 在vbt_1控件的pagedown事件中添加如下代码

dw_1.scrolltorow(this.position)

六、运行程序看看效果

窗口缩放

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员晓凡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值