以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何判断当前打开的是哪个并列窗口 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=168765) |
-- 作者:qaz17909 -- 发布时间:2021/5/22 19:59:00 -- 如何判断当前打开的是哪个并列窗口 全部采用并列窗口,想判断当前打开的是并列窗口的名称,用如下代码无效。 Dim frm As WinForm.Form = Forms.ActiveForm
If frm IsNot Nothing Then MessageBox.Show("活动窗口为:" & frm.Name) Else MessageBox.Show("无活动窗口!" ) End If |
-- 作者:cnsjroom -- 发布时间:2021/5/22 21:44:00 -- 回复:(qaz17909)如何判断当前打开的是哪个并列窗口... For Each Frm As WinForm.Form In Forms OUTPUT.SHOW(Frm.FormStyle) ’0 1 2 3 4 5 6 7对应的是窗口属性里面的类型 一次为并列 停靠 …… If Frm.FormStyle=0 Then MessageBox.Show("活动窗口为:" & frm.Name) Else MessageBox.Show("无活动窗口!" ) End If Next
|
-- 作者:qaz17909 -- 发布时间:2021/5/23 9:39:00 -- 好像不行,实例已上传,希望每个窗口的按钮能够弹出当前窗口的名称。 |
-- 作者:有点蓝 -- 发布时间:2021/5/23 21:06:00 -- 如果每个窗口有自己的按钮就简单了 MessageBox.Show(e.form.name)
|
-- 作者:qaz17909 -- 发布时间:2021/5/24 8:23:00 -- 不是的,我没有表达好,不是通过每个窗口上面的按钮去弹出的,是直接用代码判断当前窗口的名称。 |
-- 作者:有点蓝 -- 发布时间:2021/5/24 9:28:00 -- 假设并列窗口绑定表A Dim a As C1.Win.C1Command.C1DockingTab = Tables("表A").grid.parent.parent Output.Show(a.SelectedTab.text) ‘窗口标题’ Output.Show(a.SelectedTab.controls(0).name) ‘窗口名称’ |
-- 作者:qaz17909 -- 发布时间:2021/5/24 20:06:00 -- 我在命名窗口输入上面的代码,但是提示出错啊 |
-- 作者:有点蓝 -- 发布时间:2021/5/24 20:52:00 -- [此贴子已经被作者于2021/5/24 20:56:34编辑过]
|
-- 作者:qaz17909 -- 发布时间:2021/5/24 20:58:00 -- 我实例里,三个窗口绑定的表都是表A,并且我通过导航把三个并列窗口都打开了,然后我任务窗口输入上述代码出错了。 |
-- 作者:有点蓝 -- 发布时间:2021/5/24 21:15:00 -- Dim b = basemainform.controls("MainPages") Dim c = b.tabpages("表A").controls(0) output.Show(c.SelectedTab.controls(0).name)
|