VisionPro笔记(1):动态创建控件
VisionPro学习笔记(1):动态创建控件
有的时候可能需要在程序中动态创建控件,VisionPro实例中提供了一例动态创建Blob控件的方法。当然,动态创建过多的控件会极大的消耗系统的资源,建议少用。用完之后在不再需要时要及时销毁,以回收资源。
1)声明全局变量:
Private mBlobTool as CogBolobTool
Private mBlobEdit as CogBlobEdit
2) 创建:
由于创建过程需要占用资源,所以需要改变鼠标垫状态。
Me.Cursor=Cursors.WaitCursor
构建Blob Tool
if mBlobTool is nothing then mBlobTool=new CogBlobTool
mBlobEdit=new CogBlobEdit
开始初始化Edit控件
Ctype(mBlobEdit,System.ComponentModel.ISupportInitialize).BeginInit()
原始界面
mBlobEdit.Enable=True
mBlobEdit.Location=New System.Drawing.Point(0,0)
mBlobEdit.Name="CogBlobEdit1"
mBlobEdit.Size=new System.Drawing.Size(800,450)
mBlobEdit.TabIndex=0
Me.tabControl1.SelectedIndex=0
Me.BlobTabPage.Controls.Add(mBlobEdit)
Ctype(mBlobEdit,System.ComponentModel.ISupportInitialize).EndInit()
初始化结束时向BlobEdit控件指定Tool
mBlobEdit.Subject=mBlobTool
改变鼠标为默认形式
Me.Cursor=Cursors.Default
添加控件之后界面
3)窗体关闭时或其它时候需要回收资源:
Me.Cursor=Cursors.WaitCursor
Me.BlobTabPage.Controls.Remove(mBlobEdit)
mBlobEdit.Dispose()
Me.Cursor=Cursor.Default
由于在自动创建时控件的AutoCreateTool会被忽略,因此用户必须创建Tool,并把控件指定到此Tool。
最新文章
- Java程序日志:java.util.logging.Logger类
- Python for Data Analysis
- python成长之路【第十二篇】:RabbitMQ入门
- 脚本tips
- 孙鑫VC学习笔记:多线程编程
- 浅谈URLEncoder编码算法
- iOS 开发知识小集(1)
- IntelliJ IDEA 常用设置讲解1
- BZOJ 2751 容易题
- Java Script 正则表达式的使用示例
- 《sed的流艺术之四》-linux命令五分钟系列之二十四
- jq 事件冒泡总结
- [ios3-地图] 如何在iOS地图上高效的显示大量数据 [转]
- Error400
- 转载c++常忘的知识点
- js实现html截图生成图片
- EndNote中文文献导入出错和数量限制解决
- Yoink Mac版(临时文件存储助手)中文版
- Could not load file or assembly 'System.Web.Mvc, Version=5.2.3.0...
- C点滴成海------Dev C++怎么修改成简体中文
热门文章
- python中的深拷贝和浅拷贝理解
- [转载]阿里云MySQL优化主从同步,降低数据延迟
- H5+Ajax+WebApi实现文件下载(进度条,多文件)
- 使用reqire.js 生成二维码
- python写的一个集合
- 常见 Java 异常解释(恶搞版)
- 2039: [2009国家集训队]employ人员雇佣
- Qt 共享库(动态链接库)和静态链接库的创建及调用
- .NET MongoDB Driver GridFS 2.2原理及使用示例
- TCP为什么需要3次握手与4次挥手(转载)