PureBasic—数控编辑框与调节块和进度条
三个有关上下限问题的控件,
它们也是主要控件的组成部分,分别为:
SpinGadget() 数控编辑框
TrackBarGadget() 调节块控件
ProgressBarGadget() 进度条控件
首先,我们开始来认识一下SpinGadget(),
之所以将SpinGadget()翻译成"数控编辑框",并非从英转汉的角度来直译,
而是从其功能入手,可能我翻译得不够好,请大家指点指点. 语 法: [返回值=] SpinGadget(<#控件编号>, <x>, <y>, <宽>, <高>,<下限>,<上限> [,标志])
描述1: 在当前的GadgetList中构建一个数控编辑框.
如果参数<#控件编号>使用#PB_Any,[返回值]为新控件的编号.
EventGadget()函数将返回的编号给<#控件编号>.
描述2: [标志]总是可选的,可以为下列常量之一:
#PB_Spin_ReadOnly : 这个文本框控件是不可编辑的,显示数值文本只能通过箭头来改变.
#PB_Spin_Numeric : 本控件拥有的数值文本是可行变量,因此不需要调用SetGadgetText()函数
描述3: 你可以用GadgetToolTip()为按键添加一个"小帮助"
描述4: 以下函数可用于改变控件.
GetGadgetState(): 获得当前的控件的数值,
SetGadgetState(): 设置控件的数值,为了更新显示必须使用SetGadgetText()
GetGadgetText(): 获取控件的文本内容.
SetGadgetText(): 设置控件的文本内容
GetGadgetAttribute(): 具有下列属性之一:
#PB_Spin_Minimum : 返回下限值
#PB_Spin_Maximum : 返回上限值
SetGadgetAttribute(): 具有下列属性之一:
#PB_Spin_Minimum : 设置下限值
#PB_Spin_Maximum : 设置上限值
描述5: 这个控件支持EventType()函数,允许以下事件:
#PB_EventType_Change: 在编辑区的文本被用户修改
1: 在"向上"按钮被按下.
-1: 在"向下"按钮被按下.
描述6: 这个控件支持SetGadgetColor()和GetGadgetColor()函数,允许以下的<着色类型>
#PB_Gadget_FrontColor : 文本色
#PB_Gadget_BackColor : 背景色
例子:
hwnd = OpenWindow(0,0,0,200,150,"数控编辑框 - 迷路制作",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
If CreateGadgetList(hwnd)
SpinGadget (0, 50, 50, 100, 25, 0, 30)
SetGadgetState (0, 5) : SetGadgetText(0, "5") ;初始化并设置显示
Repeat
Event = WaitWindowEvent()
If Event = #PB_Event_Gadget
If EventGadget() = 0
SetGadgetText(0,Str(GetGadgetState(0))) ;更新显示
EndIf
EndIf
Until Event=#PB_Event_CloseWindow
EndIf
这个控件在设备界面或设置中可以用得到:
TrackBarGadget() 调节块控件
语 法: [返回值=] TrackBarGadget(<#控件编号>, <x>, <y>, <宽>, <高>,<下限>,<上限> [,标志])
描述1: 在当前的GadgetList中构建一个调节块控件.
如果参数<#控件编号>使用#PB_Any,[返回值]为新控件的编号.
EventGadget()函数将返回的编号给<#控件编号>.
描述2: 你可以选择一个数值的滑动范围,如多媒体播放器的播放进度条.
上下限的范围为0至10000.
描述3: [标志]总是可选的,可以为下列常量之一:
#PB_TrackBar_Ticks : 显示调节的刻度.
#PB_TrackBar_Vertical : 设置调节块为垂直模式(来替代默认的水平模式).
描述4: 你可以用GadgetToolTip()为按键添加一个"小帮助"
描述5: 这个控件支持EventType()函数,允许以下事件:
- GetGadgetState() : 返回当前滑片位置
- SetGadgetState() : 设置滑片位置
- GetGadgetAttribute() : 具有下列属性之一:
#PB_TrackBar_Minimum : 返回下限值
#PB_TrackBar_Maximum : 返回上限值
- SetGadgetAttribute() : 具有下列属性之一:
#PB_TrackBar_Minimum : 设置下限值
#PB_TrackBar_Maximum : 设置上限值
例子:
hwnd = OpenWindow(0,0,0,320,200,"调节块控件 - 迷路制作",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
If CreateGadgetList(hwnd)
TextGadget (3, 10, 20, 250, 20,"标准调节块控件", #PB_Text_Center)
TrackBarGadget(0, 10, 40, 250, 20, 0, 10000)
TextGadget (4, 10, 100, 250, 20, "显示进度刻度", #PB_Text_Center)
TrackBarGadget(1, 10, 120, 250, 20, 0, 30, #PB_TrackBar_Ticks)
TextGadget (5, 90, 180, 200, 20, "垂直模式", #PB_Text_Right)
TrackBarGadget(2, 270, 10, 20, 170, 0, 10000, #PB_TrackBar_Vertical)
Repeat:Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
这个控件的用途相当广泛,一副降燥的好中药:
ProgressBarGadget()进度条控件 语 法: [返回值=] ProgressBarGadget(<#控件编号>, <x>, <y>, <宽>, <高>,<下限>,<上限> [,标志])
描述1: 在当前的GadgetList中构建一个调节块控件.
如果参数<#控件编号>使用#PB_Any,Result的返回值为新控件的编号.
描述2: 进度条的值只能在上下限之间的任意值.
描述3: [标志]总是可选的,可以为下列常量之一:
#PB_ProgressBar_Smooth : 进度条用平滑模式替代块模式,(在XP中启动皮肤,并不受影响)
#PB_ProgressBar_Vertical : 进度条为垂直模式。
描述4: 你可以用GadgetToolTip()为按键添加一个"小帮助"
描述5: 这个控件支持EventType()函数,允许以下事件:
- SetGadgetState() : 设置进度条的值.
- GetGadgetState() : 获取当前进度条的值.
- SetGadgetAttribute() : 具有下列属性之一:
#PB_ProgressBar_Minimum : 设置下限值
#PB_ProgressBar_Maximum : 设置上限值
- GetGadgetAttribute() : 具有下列属性之一:
#PB_ProgressBar_Minimum : 返回下限值
#PB_ProgressBar_Maximum : 返回上限值
描述6: 这个控件支持SetGadgetColor()和GetGadgetColor()函数,允许以下的<着色类型>
#PB_Gadget_FrontColor : 进度条颜色
#PB_Gadget_BackColor : 背景色
例子:
hwnd = OpenWindow(0,0,0,320,200,"进度条控件 - 迷路制作",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
If CreateGadgetList(hwnd)
TextGadget (3, 10, 10, 250, 20, "标准进度条控件 (50/100)", #PB_Text_Center)
ProgressBarGadget(0, 10, 30, 250, 30, 0, 100)
SetGadgetState (0, 50) ; 设置进度为50/100处
TextGadget (4, 10, 70, 250, 20, "滑片模式进度条 (50/200)", #PB_Text_Center)
ProgressBarGadget(1, 10, 90, 250, 30, 0, 200, #PB_ProgressBar_Smooth)
SetGadgetState (1, 50) ; 设置进度为50/200处
TextGadget (5, 100,135, 200, 20, "垂直模式进度条 (100/300)", #PB_Text_Right)
ProgressBarGadget(2, 270, 10, 30, 120, 0, 300, #PB_ProgressBar_Vertical)
SetGadgetState (2, 100) ; 设置进度为100/300处
Repeat:Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
PureBasic—数控编辑框与调节块和进度条的更多相关文章
- CodePush自定义更新弹框及下载进度条
CodePush 热更新之自定义更新弹框及下载进度 先来几张弹框效果图 非强制更新场景 image 强制更新场景 image 更新包下载进度效果 image 核心代码 这里的热更新Modal框,是封装 ...
- Android UI系列-----时间、日期、Toasts和进度条Dialog
您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注按钮 来关注我的博客的最新动态. 如果文章内容对您有帮助, 不要忘记点击右下角的 推荐按钮 来支持一下哦 如果您对文章内 ...
- 【转】Android UI系列-----时间、日期、Toasts和进度条Dialog
原文网址:http://www.cnblogs.com/xiaoluo501395377/p/3421727.html 您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注 ...
- 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条
http://blog.csdn.net/terryzero/article/details/3797782 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条 标签: swing编程 ...
- 家庭版记账本app进度之编辑框组件
<EditText>中设置提示信息是用到的语句是android:hint来进行提示语句的书写. android:inputType可以将此编辑框设置为输入密码的编辑框(现实的是小黑点) a ...
- [转载]ExtJs4 笔记(8) Ext.slider 滚轴控件、 Ext.ProgressBar 进度条控件、 Ext.Editor 编辑控件
作者:李盼(Lipan)出处:[Lipan] (http://www.cnblogs.com/lipan/)版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其法律 ...
- ExtJs4 笔记(8) Ext.slider 滚轴控件、 Ext.ProgressBar 进度条控件、 Ext.Editor 编辑控件
本篇要登场的有三个控件,分别是滚轴控件.进度条控件和编辑控件. 一.滚轴控件 Ext.slider 1.滚轴控件的定义 下面我们定义三个具有代表意义滚轴控件,分别展示滚轴横向.纵向,以及单值.多值选择 ...
- 通过编写串口助手工具学习MFC过程——(六)添加Edit编辑框控件
通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...
- MFC编辑框字体大小调节(转)
在学习MFC中需要调整编辑框中的字体大小,以下是我结合网上与自己实际操作总结的,希望对其它同学有所帮助. 首先,了解以下函数原型:BOOL CreateFont( int nHeight, ...
随机推荐
- Oracle11完全卸载方法 deinstall.bat如何用以及如何删除oracle注册表
转自:http://blog.sina.com.cn/s/blog_68fe7e15010100an.html 之前因为不知道偶电脑是因为安装了oracle后,才导致的长达两周的开机速度要足足10分钟 ...
- Android 命名规范 (提高代码可以读性) 转
转自:http://blog.csdn.net/vipzjyno1/article/details/23542617 刚接触android的时候,命名都是按照拼音来,所以有的时候想看懂命名的那个控件 ...
- IIS-如果外网访问不到 域名
如果访问不到 域名 , 可以 给域名的目录 增加“IIS_IUSERS”权限.
- 【codevs1690】开关灯 线段树 区间修改+区间求和(标记)
[codevs1690]开关灯 2014年2月15日4930 题目描述 Description YYX家门前的街上有N(2<=N<=100000)盏路灯,在晚上六点之前,这些路灯全是关着的 ...
- C#学习笔记(九)——集合、比较和转换
一.集合 ** System.Collections名称空间中的几个接口提供了基本的集合功能 Ps:这里看成一个动态的链表,但是已经完美的封装好了. (一)使用集合 1.代码示例 (1)Animal. ...
- 内容提供者Content Provider
*读取联系人 StringBuilder sb = new StringBuilder(); // 1:得到中间人. ContentResolver resolver = getContentReso ...
- editplus利用正则表达式快速定位
例如我要找到user_jj表保存数据的语句 做法:editplus选择正则表达式输入 user_jj.*save 就可以定位到:M('user_jj')->where(array('tgbz_i ...
- ember.js:使用笔记6 子项目的前进与后退
如下代码会根据model产生不同的table项,在进行其他设置后,一般是根据id来跳转到相应项目子项中: {{#each}} {{#link-to "tabls" this}}{{ ...
- Unity3D安装多版本
今天我也遇到这个版本更换问题. 老外也遇到了的!哈哈. 错误提示是: Fatal error!type = =kMetaAssetType & pathName.find("lib ...
- SplendidCRM 如何添加及使用中文语言包
SplendidCRM 功能很强大,也支持多国语言,但关于中文语言安装的介绍在网上一直都找到,自已摸索了一下,成功使SplendidCRM应用中文,以下是安装方法. 版本号:SplendidCRM 7 ...