以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]如何引用窗口中添加窗口的控件  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94619)

--  作者:cqlwsam
--  发布时间:2016/12/28 10:39:00
--  [求助]如何引用窗口中添加窗口的控件
如下图,如何代码在窗口中区域1添加新窗口 (记录窗口)

PB.BaseControl.Controls.add(Forms("记录窗口").BaseForm)

如何引用新添加窗口中的空间。谢谢!


图片点击可在新窗口打开查看此主题相关图片如下:360反馈意见截图176402197985108.png
图片点击可在新窗口打开查看



--  作者:有点色
--  发布时间:2016/12/28 10:50:00
--  

方法一:直接引用

 

msgbox(forms("窗口1").controls("button1").name)

 

方法二:相对引用

 

Dim PB As WinForm.Panel = e.Form.Controls("Panel1")
Dim frm = pb.basecontrol.controls(0).controls(0)
For Each o As object In frm.controls
    output.show(o.name & o.Gettype.name)
Next


--  作者:cqlwsam
--  发布时间:2016/12/28 11:05:00
--  
直接引用有点问题,好像没得结果。
举个例子,如在panel1中添加"记录窗口" ,记录窗口中有控件“TextBox3”,间接引用的代码怎么弄,谢谢!



--  作者:有点色
--  发布时间:2016/12/28 11:07:00
--  

 直接引用没问题,请认真测试。

 

Dim frm = pb.basecontrol.controls(0).controls(0)

msgbox(frm.Controls("TextBox3").Name)


--  作者:cqlwsam
--  发布时间:2016/12/28 11:12:00
--  
可能因为在大窗口中有相同的名称的空间。textbox1,在记录窗口中有相同的控件名。运行不报错,但无结果。可能是命名相同吧,我改了在试一试。
--  作者:cqlwsam
--  发布时间:2016/12/28 11:43:00
--  
如截图。
具体情况:通过点击截图中2位置的记录,然后找到相应记录填入1位置的表中(平时是隐藏表);3位置是1位置的记录窗口。
现在想实现:通过点击记录窗口的每条记录,如“红细胞1”,在位置4显示其正常值和临床意义。(位置4的正常值和临床意义来自“实验室检查维护”,两者“检查名称”是相同的)


图片点击可在新窗口打开查看此主题相关图片如下:360反馈意见截图17860609372429.png
图片点击可在新窗口打开查看


--  作者:有点色
--  发布时间:2016/12/28 11:47:00
--  

 给记录窗口控件添加事件,然后写对应代码。

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=72491&skin=0

 


--  作者:cqlwsam
--  发布时间:2016/12/28 12:28:00
--  
因为recordgrid 是动态添加的,事件写在哪个地方?图片点击可在新窗口打开查看
--  作者:有点色
--  发布时间:2016/12/28 14:33:00
--  
以下是引用cqlwsam在2016/12/28 12:28:00的发言:
因为recordgrid 是动态添加的,事件写在哪个地方?图片点击可在新窗口打开查看

 

代码肯定是固定不变的。如果是变化的,肯定你逻辑有问题。


--  作者:cqlwsam
--  发布时间:2016/12/28 14:39:00
--  
我已经知道了,应该写在全局事件中。
代码:Public myToolTip As New Windows.Forms.ToolTip()

代码中tooltip()是什么意思?谢谢!