【PB案例学习笔记】-09滚动条使用

写在前面

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

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

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

gitee代码仓库

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

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

一、小目标

通过本篇文章的学习,我们将掌握怎么使用PB提供的滚动条控件。

本示例中,我们通过控制滚动条来实现图框中不同颜色的显示

滚动条使用

二、滚动条简介

当用户需要指定连续值而进行滑动控制时,就需要用到滚动条。而在PB中滚动条一共有两种,① HScrollBar VScrollBar

我们只需要要指定滚动条的MinPositionMaxPositionPosition就可以来控制滚动条

三、创建程序的基本框架

① 创建examplework 工作区

② 创建exampleapp 应用

③ 创建w_main 窗口,Title 设置为使用滚动条

以上步骤如果忘记了的小伙伴可以翻一翻第一篇文章

④ 创建控件,进行页面布局

向窗口中添加1个GroupBox 控件、4个StaticText控件和三个HScrollBar 滚动条。

控件名依次为 gb_1st_1st_2st_3st_4hsb_rhsb_ghsb_b

具体布局及属性设置如下

控件名称属性
gb_1Text颜色控制
st_1Text
st_2Text绿
st_3Text
st_4BorderTrue
hsb_rMinPositionMaxPosition
hsb_gMinPositionMaxPosition
hsb_bMinPositionMaxPosition

页面布局

四、编写代码

① 设置实例变量

在下图视窗下设置实例变量

设置实例变量

int	ii_r, ii_g, ii_b

② 在滚动条控件hsb_rlineleft 事件中输入如下代码

lineleft 事件是在用户点击滚动条上的左箭头按钮时触发的。用于处理用户向左滚动滚动条时的操作。

if ii_r<10 thenii_r = 0
else// 每次向左滚动滚动条时,实例变量ii_r 减10ii_r = ii_r - 10
end if
//设置滚动条的位置    
this.position = ii_r
//设置控件st_4 背景颜色
st_4.backcolor = RGB(ii_r,ii_g,ii_b)

③ 同理在滚动条控件hsb_rlineright 事件中添加如下代码

lineright 事件是在用户点击滚动条上的右箭头按钮时触发的。用于处理用户向右滚动滚动条时的操作。

if ii_r>245 thenii_r =255
elseii_r = ii_r + 10
end if 
this.position = ii_r
st_4.backcolor = RGB(ii_r,ii_g,ii_b)

④ 在滚动条控件hsb_rpageleft 事件中输入如下代码

pageleft 事件在左翻页的时候触发

if ii_r<50 thenii_r = 0
elseii_r = ii_r - 50
end if
this.position = ii_r
st_4.backcolor = RGB(ii_r,ii_g,ii_b)

⑤ 同上在滚动条控件hsb_rpageright 事件中输入如下代码

pageright 事件在右翻页的时候触发

if ii_r>205 thenii_r = 255
elseii_r = ii_r + 50
end if
this.position = ii_r
st_4.backcolor = RGB(ii_r,ii_g,ii_b)

⑥ 在滚动条控件hsb_rmoved事件中添加如下版本

moved 事件是在滚动条移动时触发。我们在该事件中设置滚动条位置和设置控件st_4 的背景颜色

ii_r = this.position
st_4.backcolor = RGB(ii_r,ii_g,ii_b)

⑦ 我们在控件hsb_ghsb_b 同样的事件(lineleft,lineright,pageleft,pagerigth,moved)中,添加同样的代码

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

open(w_main)

五、运行程序

运行程序后,我们就可以通过拉动滚动条配置出不同颜色

滚动条使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/16395.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

新书推荐:7.1 do while语句

本节必须掌握的知识点&#xff1a; 示例二十二 代码分析 汇编解析 ■do while语句其语法形式&#xff1a; do{ 语句块; }while(表达式) ■语法解析&#xff1a; ●执行do循环体内的语句块&#xff1b; ●判断while语句里的表达式&#xff0c;表达式为真继续下次循环&#…

stm32学习-串口收发(HEX/文本)数据包

串口收发HEX数据包 接线 TXDPA10RXDPA9按键PB1 配置流程 定义为固定包长&#xff0c;含包头包尾&#xff08;其中包头为0xFF&#xff0c;载荷数据固定为4字节&#xff0c;包围为0xFE&#xff09; 注意&#xff1a;固定包长/可变包长&#xff0c;或者包头包围是什么&#xf…

UI控件与视图层次:探索界面的无限可能

[OC]UI学习笔记 文章目录 [OC]UI学习笔记视图和视图层次结构CGRectUILabelUIButtonUIView控件UIView的层级关系UIWindow定时器和视图移动UISwitch进度条和滑动条控件步进器和分栏控件警告对话框与等待指示器UITextField 视图和视图层次结构 Objective-C中的UI编程主要围绕视图…

C++的哈希 哈希表 哈希桶

目录 Unordered系列关联式容器 什么是哈希 哈希表 闭散列 载荷因子α 扩容 查找 删除 字符串哈希算法 最终代码 开散列 插入 查找 删除 最终代码 完整代码 Unordered系列关联式容器 C98中&#xff0c;STL提供了底层为红黑树结构的一系列关联式容器&#xff0…

大学校园广播“录编播”与IP广播系统技术方案

一、项目概述 1、校园IP网络广播系统概述 大学校园广播系统是学校整个弱电系统中的子系统&#xff0c;它是每个学校不可缺少的基础设施之一&#xff0c;在传递校园文化、传播校园新闻资讯方面发挥着重要的作用。近几年来&#xff0c;虽然视频技术和网络技术在飞速发展&#xf…

行为设计模式之策略模式

文章目录 概述原理结构图 代码实现小结 概述 策略模式(strategy pattern)的原始定义是&#xff1a;定义一系列算法&#xff0c;将每一个算法封装起来&#xff0c;并使它们可以相互替换。策略模式让算法可以独立于使用它的客户端而变化。 在软件开发中也会遇到相似的情况&…

基于双差分值和RR间隔处理的心电信号R峰检测算法(MATLAB R2018A)

心电信号中的R峰是确定心率和节律、以及检测其它波形特征点&#xff08;图1A&#xff09;的基础。R峰的准确检测是心率变异性分析、心拍分割和心律失常识别重要的处理步骤。 现有的心电信号R峰检测方法主要为基于规则的决策法和基于深度学习的检测方法。基于规则的决策法通常对…

使用Nginx实现高可用HTTP和TCP代理:健康检查与最佳实践配置20240523

使用Nginx实现高可用HTTP和TCP代理&#xff1a;健康检查与最佳实践配置 在现代分布式系统中&#xff0c;确保应用的高可用性至关重要。Nginx作为一个高性能的HTTP服务器和反向代理&#xff0c;同时也支持TCP代理&#xff0c;通过合理配置可以大大提高系统的可用性。本文将深入…

中国低调海外巨头,实力超乎想象!

在全球化的浪潮中&#xff0c;中国公司正以前所未有的速度和规模走向世界。他们或许低调&#xff0c;但却实力非凡&#xff0c;在国际市场上掀起了一股不可小觑的“中国风暴”。今天&#xff0c;就让我们揭开那些在国外牛逼到爆炸的中国公司的神秘面纱&#xff0c;深度解析他们…

mysql中InnoDB的表空间--系统表空间

大家好。上篇文章我们讲了InnoDB的独立表空间&#xff0c;我们知道了表空间被划分为许多连续的区&#xff0c;对于大小为16KB的页面来说&#xff0c;每个区默认由64个页组成&#xff0c;每256个区为一组&#xff0c;每个组最开始的几个页的类型是固定的。&#xff08;在这里强烈…

Centos系统下命令行模式切换图形化界面

Centos系统下命令行模式切换图形化界面 在VMware CentOS命令行界面中安装图形化界面,可以按照以下步骤进行: 确保系统已连接到Internet。 打开终端窗口,并使用root权限登录。 使用以下命令安装GNOME桌面环境:sudo yum groupinstall “GNOME Desktop” -y。在安装过程中,…

HCIP-Datacom-ARST自选题库__BGP判断【20道题】

1.传统的BGP-4只能管理IPV4单播路由信息&#xff0c;MP-BGP为了提供对多种网络层协议的支持&#xff0c;对BGP-4进行了扩展。其中MP-BGP对IPv6单播网络的支持特性称为BGP4&#xff0c;BGP4通过Next Hop属性携带路由下一跳地址信息。 2.BGP4通过Update报文中的Next Hop属性携带…

RK3568笔记二十六:音频应用

若该文为原创文章&#xff0c;转载请注明原文出处。 一、介绍 音频是我们最常用到的功能&#xff0c;音频也是 linux 和安卓的重点应用场合。 测试使用的是ATK-DLR3568板子&#xff0c;板载外挂RK809 CODEC芯片&#xff0c;RK官方驱动是写好的&#xff0c;不用在自己重新写。…

华为OD机试 - 数组排列求和(Java JS Python C C++)

题目描述 1 到 n 的 n 个连续的数字组成一个数组,n 为 3 的倍数 每次按照顺序从数组中取出 3 个元素,去掉这 3 个元素中的一个最大值和一个最小值,并将剩下的元素累加为S,S初始值为0。 可以通过调整数组中元素的位置改变最终结果,每移动一个元素计为移动一次。 请计算…

智慧城市运维可视化:透视未来城市高效管理的新视窗

行业痛点 现代城市运维是一个复杂而庞大的系统&#xff0c;涉及到诸多方面&#xff0c;包括交通、环境、能源等等。然而&#xff0c;在城市运维中&#xff0c;存在着一些现实的痛点&#xff0c;给城市管理者带来了不小的压力和困扰&#xff1a; 1、交通拥堵 随着城市化进程的…

帝国cms自定义专题列表模板list.var中获取对应专题下的信息、信息数量及信息所属栏目名称

帝国cms自定义专题列表模板list.var中获取对应专题下的信息、信息数量及信息所属栏目名称 代码如下&#xff1a; $rr $empire->fetch1("SELECT GROUP_CONCAT(id) from phome_enewsztinfo where ztid$r[id]"); $ff $rr[0]; $ga explode(",", $ff); …

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《考虑分布式光伏高效消纳与负荷损失最小的区域配电网应急资源协同配置策略》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

一款网站源码下载开源工具 Website Downloader

一、简介 Website Downloader 是一款免费的网站源码下载器&#xff0c;下载任何网站的完整源代码&#xff0c;包括 JavaScript、样式表、图像等等&#xff0c;而且使用也非常简单&#xff0c;只需要粘贴网址&#xff0c;用户即可将网页链接内容下载到本地&#xff0c;而且自动…

Leetcode-239-滑动窗口的最大值

题目说明 给定一个数组 nums&#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 示例1: 输入: nums [1,3,-1,-3,5,3,6,7], 和 k 3 输出: [3,3,5,5,6,…

sw放样111

选择放样的草图的时候要精确选择两个草图的对应点