动态添加的lable控件,为什么不用unload删除控件???

123liuhh 2004-08-11 04:32:09
添加控件:
Load LabelExcel(i)
LabelExcel(i).Top = j
LabelExcel(i).Left = k
LabelExcel(i).Caption = iReExcel.Fields(i).Name '& "(" & tempField & ")"
LabelExcel(i).Visible = True
删除控件:
For i = 1 To 10
Unload LabelExcel(i)
Next

出错提示:
Run-time error '365';
Unable to unload within this context
...全文
186 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
123liuhh 2004-08-13
  • 打赏
  • 举报
回复
要通过ComboBox控件的选择,来删除其它label控件.

我想要做的是:
不管ComboBox控件选择的是什么,都要把所有动态添加的label控件全部删除.
然后再重新添加label控件.
123liuhh 2004-08-13
  • 打赏
  • 举报
回复
kxyzjm(kxyzjm):
我得到的LabelExcel(i).caption和combobox.text名称是没有相同的
kxyzjm 2004-08-12
  • 打赏
  • 举报
回复
For i = 1 To 10
if LabelExcel(i).caption=combobox.text then
Unload LabelExcel(i)
endif
Next
123liuhh 2004-08-12
  • 打赏
  • 举报
回复
kxyzjm(kxyzjm) :你好

我不是删除ComboBox控件,而是用ComboBox控件来控制是否删除其它label控件.

我的ComboBox控件内容是汉字,怎么样强制变换成整数???
kxyzjm 2004-08-11
  • 打赏
  • 举报
回复
ComboBox控件的文本是字符串,控件的索引是整数,将数据强制变换一下试试
zhangzhijian 2004-08-11
  • 打赏
  • 举报
回复
up
123liuhh 2004-08-11
  • 打赏
  • 举报
回复
肯定加载了,我都要看了,动态加载了10个label控件,
在我删除第一个加载的控件(label(1))的时候就出错了
starsoulxp 2004-08-11
  • 打赏
  • 举报
回复
先判断有没有加载,如果已经加载了再用unload方法卸载。
123liuhh 2004-08-11
  • 打赏
  • 举报
回复
我试过用按钮(Command控件)来删除动态生成label控件,是可以的

但我要用下拉框(ComboBox控件)选择的方式,来删除动态生成的label控件,
就出现我上面提到的出错信息.

谁知道为什么,怎样来解决???
kxyzjm 2004-08-11
  • 打赏
  • 举报
回复
如果你要卸载的控件没有加载,如你只加载了Load LabelExcel(1)而要卸载Load LabelExcel(2)就会出错
123liuhh 2004-08-11
  • 打赏
  • 举报
回复
写错了,是用ComboBox1控件选择,来做删除控件的
123liuhh 2004-08-11
  • 打赏
  • 举报
回复
和别人不一样的是,我用Combo1控件选择,来做删除控件的
123liuhh 2004-08-11
  • 打赏
  • 举报
回复
是动态添加的,i=0时,LabelExcel(i)才是从ToolBox拉入的控件啊
lyllxfly 2004-08-11
  • 打赏
  • 举报
回复
从ToolBox拉入的控件那一个不能被Unload,只有添加的才可。
123liuhh 2004-08-11
  • 打赏
  • 举报
回复
请高手帮忙啊,不知道错在那里

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧