winform登录窗口的正确操作办法

最近,看到网上经常会问如何进行窗口跳转,大多数的问题都是牵扯到Login窗口。其实,在Visual Studio 6以来,比较正确的做法,是判断Login窗口的返回值,然后决定是否打开主窗体,那么在C#中也是一样的。



具体做法如下:

首先,创建Login窗口,然后添加相应的输入框和按钮,设置窗口的AcceptButton为窗体的确认按钮,而CancelButton为窗体的取消按钮。例如:

            this.AcceptButton = this.btnOK;

            this.CancelButton = this.btnCancel;



定义确定按钮以及取消按钮事件,如下:

        private void btnOK_Click(object sender, System.EventArgs e)

        {

            // Here is to use fixed username and password

            // You can check username and password from DB

            if( txtUserName.Text == "Admin" && txtPassword.Text == "nopassword" )

            {

                // Save login user info

                uiLogin.UserName = txtUserName.Text;

                uiLogin.Password = txtPassword.Text;



                // Set dialog result with OK

                this.DialogResult = DialogResult.OK;

            }

            else

            {

                // Wrong username or password

                nLoginCount++;

                if( nLoginCount == MAX_LOGIN_COUNT )

                    // Over 3 times

                    this.DialogResult = DialogResult.Cancel;

                else

                {

                    MessageBox.Show( "Invalid user name and password!" );

                    txtUserName.Focus();

                    this.DialogResult=DialogResult.none;

                }

            }

        }



        private void btnCancel_Click(object sender, System.EventArgs e)

        {

            // Set dialog result with Cancel

            this.DialogResult = DialogResult.Cancel;

        }



然后,在Login窗体的Closing事件中,要进行处理,如下:

private void frmLogin_Closing(object sender, System.ComponentModel.CancelEventArgs e)

{

    // Check whether form is closed with dialog result

    if( this.DialogResult != DialogResult.Cancel &&

        this.DialogResult != DialogResult.OK )

        e.Cancel = true;

}



除此外,Login窗体一些辅助代码如下:

        private int nLoginCount = 0;

        private const int MAX_LOGIN_COUNT = 3;



        private UserInfo uiLogin;

        public frmLogin()//( ref UserInfo ui )

        {

            //

            // Required for Windows Form Designer support

            //

            InitializeComponent();



            // Set login info to class member

           // uiLogin = ui;

        }



       调用的时候,要修改程序的Main函数,如下:

        /// <summary>

        /// The main entry point for the application.

        /// </summary>

        [STAThread]

        static void Main()

        {

           // UserInfo ui = new UserInfo();

            frmLogin myLogin = new frmLogin()//( ref ui );

            if( myLogin.ShowDialog() == DialogResult.OK )

            {

                //Open your main form here

                MessageBox.Show( "Logged in successfully!" );

            }

            else

            {

                MessageBox.Show( "Failed to logged in!" );

            }

        }



       而附加的UserInfo类如下:

    /// <summary>

    /// User info class

    /// </summary>

    public class UserInfo

    {

        private string strUserName;

        private string strPassword;

        public string UserName

        {

            get{ return strUserName;}

            set{ strUserName = value;   }

        }

        public string Password

        {

            get{ return strPassword;}

            set{ strPassword = value;}

        }

        public UserInfo()

        {

            strUserName = "";

            strPassword = "";

        }

    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Winform 登录界面是基于Windows Forms框架的一种用户界面设计,用于实现用户登录的功能。它通常包括用户名、密码输入框、登录按钮以及一些其他辅助控件,用于验证用户的身份并进行登录操作。 在实现Winform登录界面时,我们可以利用Visual Studio等集成开发环境创建一个新的Winform项目,并在设计视图中添加所需的控件。首先,我们需要将文本框控件用于输入用户名和密码,并设置合适的提示文本。接下来,我们可以使用密码字符掩码来隐藏输入的密码。 为了提高用户体验,可以添加一些校验逻辑,例如检查输入的用户名和密码是否符合要求,或者检查输入的用户名是否存在于数据库中。可以使用按钮控件实现登录按钮,并为其添加Click事件处理程序来执行登录操作。 当用户点击登录按钮时,我们可以在代码中编写逻辑来验证用户输入的用户名和密码。如果验证通过,可以显示登录成功的提示信息,并进行相应的页面跳转或功能操作。如果验证不通过,可以显示错误提示信息,例如弹出消息框提示用户重新输入。 此外,还可以添加一些其他辅助控件,例如复选框用于“记住密码”功能的实现,或者超链接控件用于忘记密码的找回操作。这些辅助功能可以提供更好的用户体验和便利性。 总之,Winform登录界面是一种简单而常见的用户界面设计,通过合适的控件布局和逻辑处理,可以有效地实现用户的登录功能,并提供良好的用户体验。 ### 回答2: WinForm 是一种基于 Windows Forms 的应用程序开发框架,可用于创建 Windows 平台上的用户界面。登录界面是一个常见的应用程序启动界面,用于用户身份验证和访问权限控制。 WinForm 登录界面通常包含以下几个主要元素: 1. 用户名和密码输入框:用户在这里输入自己的用户名和密码,用于进行身份验证。 2. 登录按钮:用户点击此按钮后,系统会验证输入的用户名和密码是否正确,并根据验证结果执行相应的操作。 3. 注册按钮:用户可以点击此按钮进行新用户的注册,以获得登录系统的权限。 4. 忘记密码链接或按钮:用户忘记密码时,可以点击此链接或按钮,系统将提供密码重置或找回密码的方法。 5. 其他相关界面元素:可能包括记住密码选项、自动登录选项、语言切换、主题切换等。 在实现 WinForm 登录界面时,可以使用 Visual Studio 等集成开发环境提供的窗体设计器工具,通过拖拽和设置属性来快速构建界面。同时,还需要编写逻辑代码来处理用户的输入和验证逻辑。 用户在输入用户名和密码后,点击登录按钮时,应用程序应对用户输入进行验证。可以使用数据库来存储用户信息,并在登录时与数据库中存储的用户信息进行比对。如果验证成功,可以跳转到主界面;如果验证失败,可以给予相应的错误提示,并留在登录界面等待用户重新输入。 总之,WinForm 登录界面是一个基于 Windows Forms 的用户界面,用于用户身份验证和访问权限控制。实现登录界面需要设计合适的界面元素,并编写逻辑代码来验证用户输入和执行相应的操作。 ### 回答3: WinForm是一种用于创建Windows桌面应用程序的开发工具。而登录界面是一个常见的应用程序开发中的功能模块,用于用户身份验证和访问控制。 在WinForm中,我们可以使用各种控件和代码来创建一个登录界面。首先,我们需要一个窗体(Form),然后在窗体上添加一些必要的控件,如标签(Label)、文本框(TextBox)、按钮(Button)等。 在标签中,我们可以添加一些文字说明,如“用户名”和“密码”,以指导用户输入相关信息。在文本框中,用户可以输入用户名和密码。此外,我们还可以添加一个复选框(CheckBox),用于记住用户的登录信息。最后,我们还可以添加一个按钮,用于提交用户输入的信息。 在按钮的点击事件中,我们可以编写相关的代码来验证用户输入的用户名和密码是否正确。如果正确,可以进行相应的跳转或操作;如果错误,可以显示相应的错误提示信息。 此外,为了增加用户体验,我们还可以在登录界面上添加一些其他功能,如生成验证码、实现自动登录、添加忘记密码链接等。这些功能可以根据具体需求进行扩展和实现。 总的来说,WinForm是一个强大而灵活的桌面应用程序开发工具,通过合理使用其提供的各种控件和代码,可以轻松地创建一个美观、功能完善的登录界面。同时,WinForm还提供了丰富的事件和属性,可以方便地实现与用户的交互和响应。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值