zoukankan      html  css  js  c++  java
  • 通过登录窗体,登录不同的窗体,同时关闭登录窗体

    程序背景:有一个登录窗体,有三个子窗体,通过登录窗体上的选择不同打开不同的子窗体,同时关闭登录窗体。

    在网上找到时候发现有说无法关闭登录窗体的,有说用隐藏的,我不知道我这个方法是不是一个好的方法,但至少是一种思路,仅供参考。

    主要思路:在程序运行时通过ShowDialog(),打开登录窗体,当然要先实例化,然后找到登录窗体上的RadioButton控件,判断其属性,根据属性值不同打开不同的窗体(即通过Application.Run()方法打开)。

    程序实现:

    1:)  登录窗体上有三个RadioButton,选择不同,打开不同的窗体

    2:)  修改 Program 里的方法,实现判断RadioButton的Name属性,然后使用Application.Run(),打开不同的窗体

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Windows.Forms;
    
    namespace UI
    {
        static class Program
        {
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                //Application.Run(new LoginForm());
    
                //实例化LoginForm窗体的对象
                LoginForm loginForm = new LoginForm();
    
                //模态窗体打开LoginForm,并判断其DialogResult
                if (loginForm.ShowDialog() == DialogResult.OK)
                {
                    //获得GroupBox控件里的子控件集合
                    GroupBox gb = (GroupBox)loginForm.Controls.Find("gbCheck", true)[0];
                    RadioButton rdo = null;
                    //遍历GroupBox控件里的子控件,转换为 RadioButton 类型的控件,方便后面判断其Name属性
                    foreach (Control item in gb.Controls)
                    {
                        rdo = item as RadioButton;
                    } 
                    //根据Name属性,打开不同的窗体
                    if (rdo.Name == "TaskForm")
                    {
                        Application.Run(new MainTaskForm());
                    }
                    else if (rdo.Name == "UserForm")
                    {
                        Application.Run(new MainUserForm());
                    }
                    else
                    {
                        Application.Run(new MainProjectsForm());
                    }
                }
            }
        }
    }

    程序总结:其实主要是ShowDialog()的使用,加上条件判断,方法仅供参考

  • 相关阅读:
    查找代码行数和查看域名版本
    iOS10里的通知与推送
    计算有多少个岛屿
    java.lang.NoClassDefFoundError: Could not initialize class com.haoyao.shop.common.XXX
    Windows 版本Mongodb 启动
    安装第三方库 报错Python version 2.7 required, which was not found in the registry
    Python 爬虫 报错 403 HTTP Error 403: Forbidden
    廖雪峰 练习 把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字
    利用Python 2.7打印杨辉三角
    MAVEN实战 读书笔记 第二章
  • 原文地址:https://www.cnblogs.com/wanly/p/3415255.html
Copyright © 2011-2022 走看看