以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 并列窗口关闭后获取当前活动窗口的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56738) |
||||
-- 作者:zpx_2012 -- 发布时间:2014/9/11 15:30:00 -- 并列窗口关闭后获取当前活动窗口的问题 此主题相关图片如下:a1.gif 如上图,当从最右边一个并列窗口关闭时,Mtb变量就会正确记录当前活动窗口的名称。如果是从中间任何一个窗口双击关闭的话,Mtb记录的却是关闭窗口的名称,而不是当前窗口的名称。这种情况下如何才有得到当前这个窗口的名称。 即当窗口1,2,3都打开并从左到右排列时,如果此时双击窗口1关闭它后,会自动显示窗口2,要如何得到窗口2的名称。
谢谢!
|
||||
-- 作者:有点甜 -- 发布时间:2014/9/11 15:42:00 -- 保持一个窗口开启,然后相对引用
Dim tab As object = Forms("主窗口").panel.parent.parent |
||||
-- 作者:zpx_2012 -- 发布时间:2014/9/11 16:02:00 -- 谢谢有点甜!但不太明白在哪个位置引用。下面红色位置关闭时会出错。麻烦在上传的那个案例上改下,可以吗? Public Mtb As String \'--------双击页签关闭窗口--------------------------------------------------- Public Sub FormTab_MouseDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) If sender.SelectedTab.Text = "主窗口" Then Return Dim TabRect As Rectangle = sender.SelectedTab.TabBounds If e.Button = System.Windows.Forms.MouseButtons.Left And TabRect.Contains(e.Location) Then Forms(sender.SelectedTab.Text).Close \'关闭窗口 Dim tab As object = Forms("主窗口").panel.parent.parent Mtb = tab.SelectedTab.text End If End Sub \'--------切换窗口页签后(记录当前活动窗口)-------------------------- Public Sub FormTab_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Mtb = sender.SelectedTab.Text \'记录当前活动窗口 End Sub
|
||||
-- 作者:有点甜 -- 发布时间:2014/9/11 16:22:00 -- 直接用啊。
Dim tab As object = Forms("主窗口").panel.parent.parent |
||||
-- 作者:zpx_2012 -- 发布时间:2014/9/11 16:36:00 -- 直接加个按钮click代码就是那两句,提示出错啊! |
||||
-- 作者:有点甜 -- 发布时间:2014/9/11 16:38:00 -- 说过了,你要保持主窗口打开。 |
||||
-- 作者:zpx_2012 -- 发布时间:2014/9/11 16:46:00 -- 谢谢,加了一句打开主窗口的代码就可以了!但为什么直接打开窗口1,2,3时也会在最左侧自动显示出主窗口,这时难道这个主窗口不是打开的吗?有点不理解。 |
||||
-- 作者:有点甜 -- 发布时间:2014/9/11 16:51:00 -- 那个是默认就有的,只是和你的重名。 |