本菜鸟由于实习工作的原因,不得不快速接触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. Salvattore:CSS 驱动的 jQuery Masonry 插件

    Salvattore 是一个 jQuery 砌体的替代,使用 CSS 驱动的配置.Salvattore 根据您指定的列数组织你的 HTML 元素.容器中的每一个项目会一个接一个被放置在列内,只需要简单 ...

  2. JSCapture – 基于 HTML5 实现的屏幕捕捉库

    JSCapture 是用纯 JavaScript 和 HTML5 实现的屏幕捕捉库.它可以让从您的浏览器中截图和记录在桌面的视频.JSCapture 使用 getUserMedia 来实现屏幕捕获.目 ...

  3. [DeviceOne开发]-白板的示例

    一.简介 该demo通过do_Painterview这个组件实现画板的基本功能,模仿的是Appstore上的叫“白板”的应用,可以更改字体颜色,字体粗细,然后用手指进行绘制,可以回退,清屏,保存到相册 ...

  4. jquery messagetip信息语提示控件

    编写原因: 作为提示框,jquery有个messagebox的控件,也就是弹出的提示框.但这个控件如果不是用在需要确认的时候,单单警告提示.消息提示.失败提示时,用户还需要去点下确认,有时这操作还是挺 ...

  5. python3版本安装

    Python环境准备 一.下载: 1.官网下载python3.0系列(https://www.python.org/) 2.下载后图标为: 二.安装:    Window下: 1.安装路径: 默认安装 ...

  6. AVAudioPlayer播放并实现了后台播放和远程控制

    // ViewController.h #import <UIKit/UIKit.h> #import <AVFoundation/AVFoundation.h> @class ...

  7. GDataXMLNode应用

    一.GDataXMLNode的安装配置过程 1.将GDataXMLNode文件加入至工程中 2.向Frameworks文件中添加libxml2.dylib库 3.在Croups & Files ...

  8. Android 采用get方式提交数据到服务器

    首先搭建模拟web 服务器,新建动态web项目,servlet代码如下: package com.wuyudong.web; import java.io.IOException; import ja ...

  9. 【代码笔记】iOS-点击加号增加书架,点击减号减少书架

    一,效果图. 二,工程图. 三,代码. ReaderViewController.h #import <UIKit/UIKit.h> @interface ReaderViewContro ...

  10. js图形网站

    在做项目的时候难免会遇到要画各式各样的图形,这里推荐一个网站 http://echarts.baidu.com/doc/example.html 这个网站各种各样的图形都有,还有案例,相当不错