winform设计一个登录界面和修改密码的界面-自动切换窗体(问题[已解] 望一起讨论)(技术改变世界-cnblog)
http://www.cnblogs.com/IAmBetter/archive/2012/01/14/2322156.html
winform设计一个登录界面和修改密码的界面-自动切换窗体(问题[已解] 望一起讨论)(技术改变世界-cnblog)
需求
登录界面:
1.要求 密码 文本可以显示和隐藏 字符 password属性
2.显示输入按钮button
要求显示输入按钮 按下去之后,实现 名字变成“取消”,取消之后密码又是隐藏的
3.要求只能输入错误 3次,3次之后自动退出
4.要求点击修改密码 切换到 修改密码界面
修改密码界面:
1.要求 新密码 2次输入一致,并且不能和旧密码一样
2.实现: 密码不能为空 提示 新旧密码一致 提示 自动清空 新密码2次输入不一致 提示并清空
3.利用 ComboBox 控件实现, 利用 清除 按钮 清除 所在的行,(要求 如果不选择 comboBox,清除 按钮是不可使用的)
问题在最后:

登录界面:
修改密码界面:
问题1: show() 与 showDialog()的区别,这个我给出答案
答:show() 调用的时候,这个时候会出现 2个界面,登录和修改界面,并且 用户是可以修改父界面(登录界面的)
showDialog()调用,是不可以修改父界面的,必须关闭 当前的子界面,也就是修改密码界面
问题2:
要实现 按“修改密码”按钮的时候的时候,调用修改密码界面并且隐藏 登录界面,当 ”修改密码界面“ 确定或者取消的时候,自动弹出 登录界面并且隐藏 修改密码界面。
结论:对于 问题2
我以前的做法是,为了实现弹出窗口,我是 建立了 2个 解决方案,其实没那个必要,在一个 解决方案里,生成多个Form1.cs即可
这样类似于 多个类 继承于 Form
感谢nfyz:
对于登录界面:
private void btnChangePassword_Click(object sender, EventArgs e)
{
this.Visible = false;
Form2 form2 = new Form2();
form2.ShowDialog();
this.Visible = true;
}
这样即可,当点击 修改密码 按钮就会隐藏 登录界面,然后打开了 修改密码界面,注意 这个时候 系统会停在这里,当你关闭 修改密码界面之后,登录界面又回来了。
winform设计一个登录界面和修改密码的界面-自动切换窗体(问题[已解] 望一起讨论)(技术改变世界-cnblog)的更多相关文章
- C# WINFORM 局域网PING 工具(技术改变世界-cnblog)
WINFORM 局域网PING 工具(技术改变世界-cnblog) 需求: 1.实时更新 日期时间 2.可以ping多个IP 地址,必须判断 IP地址的正确性,不能为广播地址 3.对ping结果的显示 ...
- C# WinForm小程序(技术改变世界-cnblog)
WinForm小程序(技术改变世界-cnblog) 需求: 1.点击按钮 更新 当前时间 2.输入 身份证,必须身份证 排序(类似银行卡那样的空格),自动生成空格排序 3.实现 必须按 第一个按 ...
- 少量代码设计一个登录界面(二) – .NET CORE(C#) WPF开发
微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. 阅读导航 本文背景 代码实现 本文参考 源码 1. 本文背景 同上篇文章<少量代码设计一 ...
- 少量代码设计一个登录界面 - .NET CORE(C#) WPF开发
微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. 少量代码设计一个登录界面 - .NET CORE(C#) WPF开发 阅读导航 本文背景 代码 ...
- exchang2010OWA主界面添加修改密码选项
原文链接:http://www.mamicode.com/info-detail-1444660.html exchange邮箱用户可以登录OWA修改密码,当AD用户密码过期或者重置密码勾选了“用户下 ...
- Mysql查看登录用户以及修改密码和创建用户以及授权(转载)
本文转自(https://www.cnblogs.com/manzb/p/6491924.html) 1.mysql查看当前登录用户,当前数据库: select user(); select data ...
- Flask -- 使用数据库(Sqlite3)、用户注册、登录注销、修改密码
# 使用sqlite数据库 import sqlite3from contextlib import closing app.config.update( DATABASE = 'my.db', #相 ...
- OpenLDAP,一登录系统就修改密码
http://guodayong.blog.51cto.com/263451/d-2 郭大勇的博客 1:修改配置文件 在前面打开注释 moduleload ppolicy.la modulepat ...
- OpenLDAP一登录系统就修改密码
1:修改配置文件 在前面打开注释 moduleload ppolicy.la modulepath /usr/lib/openldap modulepath /usr/lib64/openldap ...
随机推荐
- oracle的分号和斜杠/
;是执行语句必须的/是执行语句块必须的 比如执行一个触发器 CREATE OR REPLACE TRIGGER "TRG_1" BEFORE INSERT ON "CAT ...
- [二读]The Art of Pompeii's Influence on Neo-Classicism
The Art of Pompeii's Influence on Neo-Classicism The discovery of Pompeii's ruins in 1599 profoundly ...
- 003--MySQL 数据库事务
什么是事务? 事务是一组原子性的 SQL 查询, 或者说是一个独立的工作单元. 在事务内的语句, 要么全部执行成功, 要么全部执行失败. 事务的 ACID 性质 数据库事务拥有以下四个特性, 即 AC ...
- 【坚持】Selenium+Python学习之从读懂代码开始 DAY3
2018/05/15 [来源:菜鸟教程](http://www.runoob.com/python3/python3-examples.html) #No.1 list = [1, 2, 3, 4] ...
- CsvHelper文档-3写
CsvHelper文档-3写 不用做任何设置,默认的情况下,csvhelper就可以很好的工作了.如果你的类的属性名称和csv的header名称匹配,那么可以按照下面的例子写入: var record ...
- Linux内核学习笔记(1)-- 进程管理概述
一.进程与线程 进程是处于执行期的程序,但是并不仅仅局限于一段可执行程序代码.通常,进程还要包含其他资源,像打开的文件,挂起的信号,内核内部数据,处理器状态,一个或多个具有内存映射的内存地址空间及一个 ...
- RedHat yum源配置
RedHat yum源配置 原本以为Redhat7 和Centos7是完全一样的,可是安装完Redhat7以后,使用yum安装软件,提示红帽操作系统未注册.在网上搜索教程,最后成功解决,解决方式是将y ...
- Fiber Network ZOJ 1967(Floyd+二进制状态压缩)
Description Several startup companies have decided to build a better Internet, called the "Fibe ...
- DoItYourself!
在杨老师的勉励下,我准备开始“自己”写程序.速度很慢,不过在写的过程中对于用到的几个函数更加熟悉.也尝试多学一点,学透一点.遇到不会的函数,语法不清楚的,还是会百度,不过会自己再敲一遍.重复下去. 下 ...
- Python:模块学习——sys模块
sys模块常见函数和变量 sys.argv:命令行参数,实现从程序外部向程序传递参数 [注]:(1) sys.argv[0] 表示代码本身的文件路径 (2)sys.argv是一个元组,可以用[ ]提取 ...