MDI弹出唯一窗体

 1 /// <summary>
 2         /// 点击开启学生窗体
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void pictureBox6_Click(object sender, EventArgs e)
 7         {
 8             bool Has = false;
 9             Form3 F3 = new Form3();
10             F3.Tag = "F3";
11             foreach (Form F in panel1.Controls)
12             {
13                 if (F.Tag == F3.Tag)
14                 {
15                     F.Show();
16                     F3.Close();
17                     Has = true;
18                 }
19                 else
20                 {
21                     F.Hide();
22                 }
23             }
24             if (Has == false)
25             {
26                 F3.WindowState = FormWindowState.Maximized;
27                 F3.MdiParent = this;
28                 F3.Parent = panel1;
29                 F3.Show();
30             }
31         }
32         /// <summary>
33         /// 点击开启教师窗体
34         /// </summary>
35         /// <param name="sender"></param>
36         /// <param name="e"></param>
37         private void pictureBox5_Click(object sender, EventArgs e)
38         {
39             bool Has = false;
40             Form4 F4 = new Form4();
41             F4.Tag = "F4";
42             foreach (Form F in panel1.Controls)
43             {
44                 if (F.Tag == F4.Tag)
45                 {
46                     F.Show();
47                     F4.Close();
48                     Has = true;
49                 }
50                 else
51                 {
52                     F.Hide();
53                 }
54             }
55             if (Has == false)
56             {
57                 F4.WindowState = FormWindowState.Maximized;
58                 F4.MdiParent = this;
59                 F4.Parent = panel1;
60                 F4.Show();
61             }
62         }
时间: 2024-10-05 05:21:36

MDI弹出唯一窗体的相关文章

winform弹出唯一窗体的方法

Form1中btn1按钮点击show出Form2,当Form2处于开启状态时,再次点击btn1不会继续弹出窗体,而是将焦点定位至已开启的Form2上:当Form2关闭后,再次点击btn1则会show出一个新的Form2: Form1: //创建一个全局集合,用来放置已经show出的窗体对象 List<Form> list = new List<Form>(); //btn1点击事件: private void button1_Click(object sender, EventAr

关闭主进程和弹出唯一窗体

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication8 { public partial class Form1 :

弹出唯一窗口

一.MDI窗体弹出唯一窗体 private void button1_Click(object sender, EventArgs e) { //设置一个bool变量,用来标记是否有已打开的重名窗口 bool has = false; Form1 form1 = new Form1(); //遍历mdi子窗口 foreach (Form form in MdiChildren) { //判断是否重名 if (form.Name == form1.Name) { //重名时has为true: ha

[King.yue]Ext.net 弹出Windows窗体注意的事项

页面的控件ID不能重复,否则会覆盖原控件. [King.yue]Ext.net 弹出Windows窗体注意的事项,布布扣,bubuko.com

xtraTabbedMdiManager的标题上右鍵弹出关闭窗体菜单

实现一个增值功能, 在xtraTabbedMdiManager组件TabPage标题上右鍵弹出关闭当前窗体的菜单. C# Code:private void xtraTabbedMdiManager1_MouseUp(object sender, MouseEventArgs e){   //点左键无效, 必须是点右键弹出菜单   if (e.Button != MouseButtons.Right) return;      BaseTabHitInfo hint = xtraTabbedMd

WPF的WebBrowser屏蔽弹出脚本错误窗体

WPF自带的WebBrowser在訪问一些有问题的网页时常常跳出非常多提示脚本错误的窗体, 可是WPF没有自带屏蔽这些窗体的方法或属性. 所以网上找来一使用反射的方法来屏蔽弹出脚本错误窗体的方法, 非常管用. 代码例如以下: public void SuppressScriptErrors(WebBrowser wb, bool Hide) { FieldInfo fiComWebBrowser = typeof(WebBrowser).GetField("_axIWebBrowser2&quo

ShowDialog()弹出的窗体,关闭后,主窗体会闪烁的BUG

如图,要实现下列等待界面时,等待界面是以ShowDialog弹出的,发现关闭后,主窗体会闪烁一下的BUG,搞半天没搞明白啥原因. 过了几天后,搜索了下发现,在fm.ShowDialog(),显示出来时,其他位置再调用fm.Close(),后又调用了fm.Dispose(),注释掉了fm.Dispose()后,就好了.. ShowDialog()弹出的窗体,关闭后,主窗体会闪烁的BUG

WPF 在MVVM模式下弹出子窗体的方式

主要是通过一个WindowManager管理类,在window后台代码中通过WindowManager注册需要弹出的窗体类型,在ViewModel通过WindowManager的Show方法,显示出来. WindowManager代码如下: public static class WindowManager { private static Hashtable _RegisterWindow = new Hashtable(); public static void Regiter<T>(st

winform弹出唯一的窗体

主入口窗体的后台代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace winform唯一弹窗 { public partial class Form1 : Fo