控件.重绘 setredraw
来源:互联网 发布:linux more指令 编辑:程序博客网 时间:2024/06/05 03:23
控制可视控件的重绘。
比如,数据窗口增加行,ddlb增加节点,因为它们是可视控件,都会引起重绘,这样一是引起屏幕闪烁,二是增加系统运行时间。所以在一个循环前,dw_1.setredraw(false),在循环后dw_1.setredraw(true),举例:
--------------------------
dw_1.setredraw(false)
for i = 1 to dw_1.rowcount()
dw_1.insertrow(0)
.......
next
dw_1.setredraw(true)
SetRedraw()
指定每次修改控件属性后是否自动重绘控件
语法objectname.SetRedraw(boolean)
参数objectname 要修改重绘属性的控件或对象名objectname 可以是子数据窗口
但不能是菜单
boolean boolean 型值指定修改控件或对象的属性后PowerBuilder 是否自动重
绘控件或对象有效取值为
TRUE 每次修改属性后自动重绘该对象或控件
FALSE 修改属性后不自动重绘该对象或控件
返回值Integer 函数执行成功时返回1 出现错误时返回-1 如果任一参数为NULL
则SetRedraw()函数返回NULL
用法默认情况下每当应用程序修改了影响控件或对象外观的属性时PowerBuilder
就会自动重绘该控件或对象当应用程序需要修改控件或对象的多个影响其外观的属性
时修改之前利用SetRedraw()函数暂时关闭自动重绘功能修改之后再用SetRedraw()
函数开放自动重绘功能这种方法将会避免屏幕显示的闪烁现象并提高应用程序的性能
使用SetRedraw()函数关闭自动重绘功能后必须在适当的时候重新打开该功能否则
可能会产生问题另外如果窗口中某控件的自动重绘功能被关闭后应用程序修改了该控
件的Visible 或Enabled 属性那么该控件的跳转次序按Tab 键移动焦点的次序可能会
示例1 下面的语句关闭列表框lb_Location 的自动重绘功能
lb_Location.SetRedraw(FALSE)
在修改了列表框的属性比如增加或删除列表项后使用下述语句打开自动重绘功
lb_Location.SetRedraw(TRUE)
示例2 当列表框lb_Location 被设置为自动排序方式后即lb_Location.Sorted =
TRUE 下面的程序段在插入所有列表项后排序列表项并自动重绘列表框避免了每插
入一个列表项就排序一次和自动重绘一次提高了程序运行效率
lb_Location.SetRedraw(FALSE)
lb_Location.AddItem("北京")
lb_Location.AddItem("上海")
lb_Location.AddItem("天津")
lb_Location.AddItem("西安")
lb_Location.AddItem("洛阳")
lb_Location.SetRedraw(TRUE)
- 控件.重绘 setredraw
- setredraw
- 禁止控件重绘
- android控件重绘
- 重绘静态控件
- 重绘编辑控件
- 重绘按钮控件
- 重绘进度条控件
- 重绘控件
- 重绘treeview控件
- 重绘Button控件
- 重绘控件
- 重绘控件提示
- 重绘CButton控件
- MFC控件重绘
- winform控件重绘
- setredraw()的使用
- InsertItem中使用SetRedraw
- 操作系统嵌入浏览器的创想
- linux服务器开机启动服务
- .NET+AE开发中常见几种非托管对象的释放
- 纯jsp打造无限层次的树
- 快速排序Qsort--C语言版
- 控件.重绘 setredraw
- 获取struct tm中的时间
- codeDom命名空间的使用
- 软件维护常见问题--更换全局变量名称或对象名称
- vc 退出程序语句
- Oracle的备份与恢复
- 翻译: Windows Internals: 第六章: 进程内部结构
- 七天七世纪
- 复杂变简单 文献管理软件横向评测