运用VisualFoxPro地ProgressBar控件

运用VisualFoxPro地ProgressBar控件,第1张

ProgressBar控件位于COMCTL32中。OCX,它的帮助文件是CTRLREF。HLP这个控件给了我们一个Windows 95风格的进度条,就像当你把一个大文件从一个驱动器复制到另一个驱动器时,Windows 95显示的进度条一样。当您希望向用户显示处理进度时,此控件可用于耗时的操作。例子包括长期计算(如工资计算)、打印前的复杂查询、记录保存等。可以在处理每个记录或一批记录时,或者在任务的每个步骤中更新流程。


方法和事件
progress bar控件响应与其他VFP控件相关的一些方法和事件:Click、Drag、DragDrop、DragOver、MouseDown、MouseMove、MouseUp、Move、ShowWhatsThis和ZOrder。
属性
与Calendar控件相比,ProgressBar控件的属性比它的方法或事件更有趣。主要原因是它是一个可视化控件。许多影响控件外观的属性在设计时更容易从VFP的属性表或ProgressBar控件的属性表中设置。这些属性包括Align(确定控件位置是否可以移动或是否自动向窗体的顶部、底部、左侧或右侧倾斜)、Appearance(平面或三维)和BorderStyle。
我们对运行时属性Min、Max和Value更感兴趣。和Min Max提供控制值的范围,默认值为0到100。控件条的长度由Value属性控制。
示例
ACTIVEX。源代码中的VCX包含一个SF温度计类。这个类是一个容器类,有一个进度条,一些标签和一个取消按钮。它的自定义方法SetTitle和SetMaximum用于设置“Main”标签的标题和ProgressBar控件的值。若要更新温度计,请使用Update方法。它接收两个参数:温度计的当前值和表单中“当前任务”选项卡的标题。传递给Update的值的转换取决于窗体的lPassPercent属性的设置。如果lPassPercent为. t,则Update需要一个百分比值;如果lPassPercent是. f .,如果lPassPercent是. t .,则需要一个值,并通过该值与值的比值来计算百分比。
SFThermometer使用一种非常有趣的技术来允许来自“硬”循环的中断。Update方法检查鼠标是否已经移动到cancel按钮上,以及该按钮是否已经被按下。如果是,它使用新的doevents命令来允许事件被处理(即,cancel按钮被按下),然后设置一个用户取消处理的标志。调用循环更新方法检查标志,决定是否继续处理。我本来在Update方法中使用doevents来允许取消按钮被按下(而不是检查鼠标位置和按下状态),但是这要花很多时间!
进步。PRG是一个演示SF温度计使用的示例程序。进度表单只是有一个SF温度计容器,和进度。PRG运行表单来显示温度计。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 运用VisualFoxPro地ProgressBar控件

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情