已有56人关注
我作的是mdi窗体,其中菜单或按钮,点击一次就打开一个子窗口,再点击又会打开一个,怎样才能只打开一个窗口呀?
发表在C#图书答疑 2010-09-02
是否精华
版块置顶:
 
我作的是mdi窗体,其中菜单或按钮,点击一次就打开一个子窗口,再点击又会打开一个,怎样才能只打开一个窗口呀?就是打开子窗口时,如果该子窗口已打开,就直接把该子窗体显示到前面,需怎样作呀,请老师指点一下,万分感谢。

       private void button1_Click(object sender, EventArgs e)
        {
            frm_buySupplier buySupplier = new frm_buySupplier();
            buySupplier.Show();
        }
分享到:
精彩评论 3
东方_mrkj
学分:0 LV1
2010-09-03
沙发
读者你好:
    以后提问题,请注明出现的问题在“哪本书的哪个章节”。
    根据你提出的问题,请参考如下代码(但不要完全照搬照抄):
    frmPurvey frmp = new frmPurvey();//创建要打开的窗体对象
    bool isOpen = true;
    foreach (Form frm in this.MdiChildren)//遍历已打开的所有子窗体
            {
                if (frm.Name == frmp.Name)
                {
                     frmp.Activate();//赋予焦点
                    frmp.WindowState = FormWindowState.Maximized;//设置窗体最大化
                     isOpen = false;
                    break;
                }
            }
            if (isOpen)//如果没有找到相同窗体则打开新窗体
            {
                frmp.MdiParent = this;//设置父窗体
                frmp.Show();
            } 
wufayou
学分:0 LV1
TA的每日心情
第五天
2023-03-18 21:24:17
2010-09-14
板凳

我试过这个代码,功能是实现了,但就是如果已打开一窗体,调用时,会有明显的窗体放大的过程,影响视觉效果,眼晴看到会明显的闪动一下,而按ctrl+tab键切换窗体就不会有放大的过程。
请问老师有什么方法能作到窗体切换按ctrl+tab键那样无放大显示的切换呀?
wufayou
学分:0 LV1
TA的每日心情
第五天
2023-03-18 21:24:17
2010-09-15
地板
我已搞清楚了,用dispose掉就不会闪了。
首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照