zoukankan      html  css  js  c++  java
  • 0922 多窗体,菜单和工具栏

    多窗体

    这里所谓的多窗体就是我们所说的打开一个窗体后,从这个窗体打开另一个窗体,打开的窗体只能打开一个,当再次点击时会把焦点移入打开的新窗体

    1.   首先我们先定义一个泛型集合来存放打开的窗体,来判断是否打开过这个窗体

    List<Form> Flist = new List<Form>();

    2.在主窗体的按钮上写方法

                bool has = false;//用来判断是否打开过第二个窗体

                Form2 f2 = new Form2(this);//将这个窗体传入第二个窗体实现第二窗体关闭时清楚集合,代码在第3步骤
                foreach (Form F in Flist)
                {
                    if (F.Name == f2.Name)//遍历查看集合是否有第二个窗体
                    {
                        has = true;
                        F.WindowState = FormWindowState.Normal;//最小化放到正常大小
                        F.Focus();
                    }
                }


                if (has)
                {
                    f2.Close();
                }
                else
                {
                    Flist.Add(f2);
                    f2.Show();
                }

            }

    //第三步需要调用的函数

     Flist.Remove(F);

    3. 第二窗体关闭时清楚集合

             Form1 F1 = null;//传值进来
            public Form2(Form1 f1)
            {
                InitializeComponent();
                F1 = f1;
            }

       //关闭调用清除方法

       if (F1 != null)

    public Form2(Form1 f1)
            {
                InitializeComponent();
                F1 = f1;
            }

    菜单和工具栏

    1.ContextMenuStrip-右击菜单

    用于放置右击时出现的菜单

    2.MenuStrip-菜单

    不管什么窗体在上部一般都会有菜单栏,创建时右击会出现"插入标准项"快速建菜单

    菜单属性ShortcutKeys-快捷键

    3.StatusStrip-工具栏

    4.ToolStrip-工具栏

    我感觉3和4没什么区别

    5.ToolStripContainer-放置工具栏的容器

  • 相关阅读:
    initializer_list形参
    前置递增运算符和后置递增运算符的区别
    基本的TCP socket API
    C++ find()函数
    python-对目录下的文件按时间排序
    js常用方法
    selenium中的对文本进行全选,复制,粘贴,剪切和删除的操作
    python 打包exe 命令及去除 cmd框
    mysql命令行修改密码
    html文件转换成excel
  • 原文地址:https://www.cnblogs.com/a12110303043/p/5897815.html
Copyright © 2011-2022 走看看