以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]new窗口判断控件  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=114916)

--  作者:blsu33
--  发布时间:2018/2/26 10:43:00
--  [求助]new窗口判断控件
老师,
  new出的窗口 用ADD添加,怎么判断控件是否存在?ExistControl 好像不行


--  作者:blsu33
--  发布时间:2018/2/26 10:59:00
--  
问题是这样 的 

第一次打开窗口  往窗口添加了 PANL  然后关闭 用msbx 判断panl 名字;
会显示 panl

再打开 就出错 


.NET Framework 版本:2.0.50727.5420
Foxtable 版本:2018.2.28.1
错误所在事件:自定义函数za_nb_Stripclick
详细错误信息:
调用的目标发生了异常。
未设置对象变量或 With 块变量。

发现 再打开的过程中 没有PANL  

 

--  作者:有点甜
--  发布时间:2018/2/26 11:16:00
--  

参考 https://msdn.microsoft.com/zh-cn/library/system.windows.forms.control.controlcollection.aspx

 

contains、containskey、find等函数,都可以判断。


--  作者:blsu33
--  发布时间:2018/2/26 15:14:00
--  
老师,
  如下图 
是NEW 窗口 然后 从severmain 将面板添加进去 ,可是为什么,反向引用的 是 用全局变量 引用new 窗口,上面只有 PANL一个 控件呢 测试 panl  上面 没有控件 但是  在NEW窗口 却能看的见 为什么呢


不知道 为啥  测试了一天了 现在好了 没找到 什么毛病 

[此贴子已经被作者于2018/2/26 15:58:09编辑过]

--  作者:有点甜
--  发布时间:2018/2/26 16:38:00
--  
不明白你说什么,做个例子说明你要做什么。
--  作者:blsu33
--  发布时间:2018/2/26 17:41:00
--  
反复测试 new 的窗口 有个BTN  按钮 测试是这样的
例如 点击btn触发事件
     Messbox 测试触发控件名称什么的(弹窗)
    new 的窗口会自动的消失了
   Messbox 测试触发控件名称什么的(弹窗)-点击确定
Messbox 测试触发控件名称什么的(弹窗)-窗口消失
问题是下面的
    BTN事件继续执行
 new 的窗口会自动的出现


NEW 的窗口 假如在再窗口中 有 用Messbox 测试的时候,弹窗new的窗口就会隐藏(不知是不是暂时关闭了,不知道后面的代码是不是也暂停了),这时假如  BTN事件继续执行 可能窗口还没有显示出来 ,也就是最后两步顺序和时间差 导致 BTN事件好像没触发。
[此贴子已经被作者于2018/2/26 17:41:49编辑过]

--  作者:blsu33
--  发布时间:2018/2/26 17:44:00
--  
怎么 改善下呢
--  作者:有点甜
--  发布时间:2018/2/26 18:10:00
--  
不明白你表达的意思,实例说明你的现象和你要做的效果。