本菜鸟由于实习工作的原因,不得不快速接触C#语言,刚刚好又要做毕业设计,所以就通过自学的方式一举两得地完成这两件事情。

故此文字记录或代码中的各种文件名之类均是以毕业设计为模版记录的,看着不方便之处请海涵。(毕竟菜鸟的我暂时还不能把代码写的特别规范)

在学习过程中以日记或者周记的方式记录我遇见的问题和各种学习到的知识以此来巩固,如果有和我一样情况的志同道合的菜鸟,那我们就一起相互交流和学习吧~

文字记录的错处或者可以优化的地方,如果有大神看见,更希望不吝赐教~

毕业设计的大概模型是类似QQ的聊天,所以二话不说就先弄一个登录的Windows窗体Login_interface(开始不知道怎么规范命名,想起来就百度,后面可把我坑惨了,囧)。

最初基本的也比较好学习,C#将很多窗体的功能通过简单的设置和简单的代码(很多功能都可以百度到)变得非常容易实现,让我这种菜鸟都好上手。

1.windows窗体

我实现的是登录界面没有最大化,只需要在右下角的属性中MaximizeBox选择为False即可;

另外就是BackgroundImage设置为随便百度的一张2013的QQ背景图;

2.TextBox控件

(一个用户名输入,一个密码输入都需要这个东西)

我想在TextBox中实现,鼠标未点击的时候显示“请输入用户名”,鼠标点击的时候为空,以便输入信息。

在学习中我才知道这个过程叫做焦点,TextBox获得焦点的过程就是鼠标点击的过程,这里就需要建立事件Enter和Leave事件咯.

        private void textBox_UserName_Enter(object sender, EventArgs e)
{
//当当前控件得到焦点是,文本内容变为空
if (textBox_UserName.Text == "请输入用户名")
{
textBox_UserName.Text = "";
textBox_UserName.ForeColor = Color.Black;
}
//当当前控件得到焦点时,设置背景颜色
textBox_UserName.BackColor = Color.Beige;
} private void textBox_UserName_Leave(object sender, EventArgs e)
{
if (textBox_UserName.Text == "")
{
textBox_UserName.Text = "请输入用户名";
textBox_PassWord.ForeColor = Color.Gray;
}
//当当前控件失去焦点时,设置背景颜色为白色
textBox_UserName.BackColor = Color.White;
}

3.Button控件

建立一个确定按钮,一个取消按钮。

用户名和密码正确就进入用户界面,如果错误就显示错误信息(目前知识统一的错误形式)

        private void button1_Click(object sender, EventArgs e)
{ if (textBox_UserName.Text == "1" && textBox_PassWord.Text == "1")
{
this.Close();
}
else
{
MessageBox.Show("用户名与密码错误,请重新输入");
}
}

取消按钮就退出程序(退出时强调一下确定退出)。

        private void button_Cancel_Click(object sender, EventArgs e)
{
if (MessageBox.Show("你要干嘛?", "想清楚咯!", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes)
{
Environment.Exit(0);
}
}

这样一个基本的Login登录界面就算基本完成了~^w^~

欢迎各位指点赐教~

(2016-03-31)

C#学习笔记-Windows窗体基本功能(Login登录界面)的更多相关文章

  1. C#学习笔记-Windows窗体自定义初始位置

    根据屏幕大小定义初始位置: (这个不是难,但是最近常常忘记,记着方便查看.) //获取当前屏幕的长和宽 int ScreenX = Screen.PrimaryScreen.Bounds.Width; ...

  2. C#学习笔记——MDI窗体(多文档界面)

    1.设置父窗体: 如果要将某个窗体设置为父窗体,只需将该窗体的IsMdiContainer属性设置为True即可. 2.设置子窗体: 通过设为某个窗体的MdiParent属性来确定该窗体是那个窗体的子 ...

  3. Android菜鸟的成长笔记(3)——给QQ登录界面说So Easy

    原文:Android菜鸟的成长笔记(3)--给QQ登录界面说So Easy 上一篇:Android菜鸟的成长笔记(2)--第一个Android应用 我们前面已经做了第一个Android应用程序,虽然有 ...

  4. MySQL学习笔记Windows篇<一> Welcome to MySQL

    MySQL安装完毕后没有图形化操作界面,图形化管理界面需要另行安装,个人比较喜欢Navicat,界面更像SQLserver: 此篇学习笔记所有操作均使用命令行中完成: 1.开启/停止服务 使用MySQ ...

  5. DELPHI语法基础学习笔记-Windows 句柄、回调函数、函数重载等(Delphi中很少需要直接使用句柄,因为句柄藏在窗体、 位图及其他Delphi 对象的内部)

    函数重载重载的思想很简单:编译器允许你用同一名字定义多个函数或过程,只要它们所带的参数不同.实际上,编译器是通过检测参数来确定需要调用的例程.下面是从VCL 的数学单元(Math Unit)中摘录的一 ...

  6. ArcGIS API for JavaScript 4.2学习笔记[16] 弹窗自定义功能按钮及为要素自定义按钮(第五章完结)

    这节对Popups这一章的最后两个例子进行介绍和解析. 第一个[Popup Actions]介绍了弹窗中如何自定义工具按钮(名为actions),以PopupTemplate+FeatureLayer ...

  7. testNG 学习笔记 Day 1 使用功能详解

    TestSuite处理测试用例有6个规约(否则会被拒绝执行测试) A 测试用例必须是公有类(Public) B 测试用例必须继承与TestCase类 C 测试用例的测试方法必须是公有的( Public ...

  8. MongoDB学习笔记—windows下安装

    1.登录官网下载安装包 官网下载地址:https://www.mongodb.com/download-center?jmp=nav#community 根据你的系统下载 32 位或 64 位的 .m ...

  9. Redis学习笔记九:独立功能之慢查询日志

    Redis 的慢查询日志用于记录执行时间超过给定时长的命令请求,用户可以通过这个功能产生的日志来监视和优化查询速度. 服务器配置有两个相关选项: slowlog-log-slower-than 选项指 ...

随机推荐

  1. 使用 Promises 编写更优雅的 JavaScript 代码

    你可能已经无意中听说过 Promises,很多人都在讨论它,使用它,但你不知道为什么它们如此特别.难道你不能使用回调么?有什么了特别的?在本文中,我们一起来看看 Promises 是什么以及如何使用它 ...

  2. MySQL之MySQL常用的函数方法

    MySQL常用函数 本篇主要总结了一些在使用MySQL数据库中常用的函数,本篇大部分都是以实例作为讲解,如果有什么建议或者意见欢迎前来打扰. limit Select * from table ord ...

  3. 【再探backbone 02】集合-Collection

    前言 昨天我们一起学习了backbone的model,我个人对backbone的熟悉程度提高了,但是也发现一个严重的问题!!! 我平时压根没有用到model这块的东西,事实上我只用到了view,所以昨 ...

  4. 一步一步教你如何解锁被盗的iPhone 6S

    即使你的iPhone6S设置了六位数的密码,甚至还设置了touch ID,但我要告诉你的是:你的手机仍然能被犯罪分子解锁. 事件背景 三天前,一位苹果用户的iPhone6S被偷了.随后,小偷重置了该用 ...

  5. SharePoint 2013 在母版页中插入WebPart

    最近QQ群里有朋友问,如何在母版页里插入自己开发的WebPart.其实很简单,母版页中虽然不允许插入WebPartZone,但是Designer就可以插入WebPart:或者手动注册,然后插入WebP ...

  6. 1分钟实现Autodesk Vault登录对话框

      .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas, "Courie ...

  7. smarty访问数组中的数据,如果是关联数组直接用点.

    $tpl=new Smarty();//新建一个smarty对象,我使用的是Smarty-3.1.6版本 1.设置smarty模板路径$tpl->setTemplateDir():默认情况下是t ...

  8. LBS上传到百度地图

    准备: 第一步:注册百度地图开发者账号 第二步:使用开发者账号注册相对应秘钥 在LBS后台添加所需要上传的字段 1,添加WebClientHelper帮助类 2,LBS帮助类 private stri ...

  9. 我的Android第一章:Android环境搭建

    今天是Android第一天的学习,对于学习任何一门课程时我们都要对该课程要有基本的了解和认识,了解该课程学点什么内容,学了这门知识我门能够做些什么,这也是对于我们这些刚入门的学习人员来说是一个必须要弄 ...

  10. UIResponder(iOS 常见的事件)

    1.触摸事件 /** 当手指开始滑动 */ - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event /** 当手指正在移动 * ...