社区
控件
帖子详情
关于vb 释放动态添加控件数组 请教高手!
jeffqi88
2009-06-29 12:12:50
我在容器内先预置控件数组 ,在运行时通过load frame(1)来动态添加
删除我采用 DestroyWindow frame(1).hwnd
问题在于我用frame.count计算时发现 ,计算出来结果是 已删除 和 新添加 的控件总数
比如 我第一次 添加2个 然后删除 第二次 添加3个 用count计算 总数是6个(1个是设计时已添加)
我如何能够计算出 当前控件数组总数 ,不包含以删除的!谢谢了
...全文
277
6
打赏
收藏
关于vb 释放动态添加控件数组 请教高手!
我在容器内先预置控件数组 ,在运行时通过load frame(1)来动态添加 删除我采用 DestroyWindow frame(1).hwnd 问题在于我用frame.count计算时发现 ,计算出来结果是 已删除 和 新添加 的控件总数 比如 我第一次 添加2个 然后删除 第二次 添加3个 用count计算 总数是6个(1个是设计时已添加) 我如何能够计算出 当前控件数组总数 ,不包含以删除的!谢谢了
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lyserver
2009-06-29
打赏
举报
回复
必须使用unload删除,使用DestroyWindow绕过了VB的内部数组调整,故计数错误,比如添加一个frame控件,控件名为frame1,设置Index为0,这时,frame1.count应该为1,添加以下代码:
Private Sub cmbAdd_Click()
Load Frame1(1)
Frame1(1).Visible = True
Frame1(1).Move Frame1(0).Width + 10
Debug.Print Me.Frame1.Count
End Sub
Private Sub cmdRemove_Click()
Unload Frame1(1)
Debug.Print Me.Frame1.Count
End Sub
Private Sub Form_Load()
Me.ScaleMode = vbPixels
Debug.Print Me.Frame1.Count
End Sub
jeffqi88
2009-06-29
打赏
举报
回复
我知道为什么了 我的控件数组里面还有控件 unload 必须先卸载里面控件 才能再卸载控件数组。
只有unload 才能用count 计算出正确的控件数目
谢谢 mhm0517 原来不行的话 只有按你说的这样了作了
mhm0517
2009-06-29
打赏
举报
回复
如果都不行,那就这样了.
设一个全局.
每load一个.就+1
每 DestroyWindow frame(1).hwnd 一次. 就-1
jeffqi88
2009-06-29
打赏
举报
回复
晕 unload 无法删除 已经试过。
msgbox frame.count 显示结果为 删除 和未删除总数 有什么办法统计出未删除得总数 谢谢
Alco2007
2009-06-29
打赏
举报
回复
用unload删除
mhm0517
2009-06-29
打赏
举报
回复
MsgBox frame(1).Count '取得总数.
VB
.NET中
动态
添加
控件
数组
VB
.NET中的
控件
数组
? 项目的需求又变了,我必须要在我的窗口上根据读取的文件不同
添加
不同的checkbox,我本以为
vb
.net和
vb
一样一定会有
控件
数组
呢,结果网上的
高手
们都说
vb
.net是没有
控件
数组
这个概念的。不过可以自己写一个类来实现
控件
数组
的功能。他们都有现成的代码,我拿来用了,很好用。这里我就只简单说一下我在用这个类的过程中出现的问题。应该比较值得提一下。
VB
动态
控件
数组
实战教程:多发子弹项目
动态
控件
数组
不同于传统的静态
数组
,在静态
数组
中,
数组
的大小在编译时就已经确定,而
动态
数组
则允许在程序运行时进行元素的增加和减少。
动态
控件
数组
的这种特性使得开发者可以更加灵活地处理各种不同的用户交互场景。在Visual Basic(
VB
)中,
动态
控件
数组
是一种特殊类型的
数组
,它允许开发者在运行时根据需要创建、销毁和修改
数组
的大小。
动态
控件
数组
不具有固定的容量,这意味着可以根据应用程序的实际需求
动态
地
添加
或删除
控件
元素。
在
VB
.NET中使用
控件
数组
http://www.cnblogs.com/yunbo/archive/2009/08/13/1545657.html
控件
数组
是位于一个窗体上共享同一名称的一组同种类型
控件
。普通
控件
仅使用名称就可以识别,而引用
控件
数组
中的成员则需要同时使用名称和索引。开发人员在 Visual Basic 6.0 以及更早的版本中使用
控件
数组
主要有以下三个理由: 1. 在循环中访问
数组
中控
在c#/
VB
.NET中使用
控件
数组
由于在容器中的每一个
控件
只要不作特殊处理,都会自动构成了
控件
集合,这样,只要对原有的事件例程作少量修改,就可以非常方便的实现用一个事件例程响应某个集合中所有
控件
产生的事件。在Form中构成
控件
数组
非常方便,但也有一个小问题:一般来说,Form中的
控件
往往有很多种,系统建立
控件
集合的时候将会把其中的所有
控件
放在同一个集合中,这样一来,程序员在写代码的时候有可能将每一个
控件
的下标混淆,为了解决这个问题,可以用Panel容器来根据需要将某类
控件
建立成
控件
数组
,也就避免了上述问题。
学习笔记:
VB
.net
动态
添加
控件
数组
并传递事件
学习笔记:
VB
.net
动态
添加
控件
数组
并传递事件
控件
数组
和事件“中间人”
动态
添加
控件
控件
数组
和事件 新建一个用户窗体,在定义
控件
数组
时,不能用Withevnets来定义
数组
即使可以,为每一个
数组
成员编写事件也是非常麻烦的,考虑通过一个“中间人”来传递事件 “中间人” 用继承的方法为Button
控件
增加一些事件、属性和方法 Public Class MyButton Inherits ...
控件
1,453
社区成员
41,351
社区内容
发帖
与我相关
我的任务
控件
VB 控件
复制链接
扫一扫
分享
社区描述
VB 控件
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章