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-放置工具栏的容器

  • 相关阅读:
    window phone7中自定义listbox或scrollviewer滚动条样式
    windows phone7中使用bing中文地图和Google地图
    window phone7中listbox,ItemsControl等项渲染速度慢的解决方案
    window phone list box使用收藏,mvvm ItemsControl数据绑定
    RSA的密钥把JAVA格式转换成C#的格式
    自定义控件
    【03】flask之url_for函数及过滤器使用
    【01】flask之入门及安装
    js 弹出层
    插入排序_排序算法_算法
  • 原文地址:https://www.cnblogs.com/a12110303043/p/5897815.html
Copyright © 2011-2022 走看看