窗体==>>初始Windows程序
初识Windows程序
01.创建Windows程序(VS)
01.打开Visual Studio开发工具
02.选择"文件"→"新建"→"项目" 命令.
03.项目类型选择"Visual C#".
.模板选择"Windows窗体应用程序".
05."起名"→"确认".

02.认识Windows程序

.Form1.cs:窗口文件,程序员对窗体编写的代码一般都会存放在这个文件中
.Form.Designer.cs:窗体设计文件,其中的代码是由Visual Studio 自动生成的,一般不需要修改.
.Form.resx(Form.Designer.cs中):资源文件,用来配置当前窗体所使用的字符串.图片等资源.
.Program.cs:主程序文件,其中包含程序入口的main()方法.
03.窗体的主要属性和方法
1.常用属性
2.常用方法
04.关于窗体项目的注意点:
.一个解决方案下可以包含多个项目,
一个项目下可以包含多个窗体
.如何设置一个项目下的某个窗体为启动窗体???
解析:通过更改Program.csMain方法中最后一行代码设置
.控件的Name属性相当于隐藏值,一定要改
真正在窗体显示内容的是Text属性
.如果一个解决方案下有多个项目,如何设置某个项目为启动项??
解析:可以对项目点击右键→设为启动项
05.机房的项目如何保存,或者保存后如何打开???
解析:可以将解决方案另存为到指定的项目下,下次
直接打开sln文件就可以了
06.事件激发错误问题???
(这个正常,现在大家都事件的概念还不太理解,
随着学习的深入大家就会了解)
解析:注意什么时候激发事件
07.如何让窗体运行后无法改变大小?
解析:通过如下设置:
(01).禁用最大化按钮
(02).设置FormBorderStyle属性为任何一个以Fixed开头的属性都OK
05.MessageBox消息框
参数一:提示信息
参数二:标题文本
参数三:按钮设置
参数四:图标设置
eg: MessageBox.Show("确定退出?","温馨提示",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);
分析:
01.按钮设置中:
成员名称 说明
AbortRetryIgnore 消息框包含“中止”、“重试”和“忽略”按钮。
OK 消息框包含“确定”按钮。
OKCancel 消息框包含“确定”和“取消”按钮。
RetryCancel 消息框包含“重试”和“取消”按钮。
YesNo 消息框包含“是”和“否”按钮。
YesNoCancel 消息框包含“是”、“否”和“取消”按钮。
02.图标设置中
成员名称 说明
None 消息框中不显示小图标
Warning /Exclamation 消息框中显示
Asterisk /Information 消息框中显示
Error /Hand/Stop 消息框中显示
Question 消息框中显示
06.窗体的基本控件
1.Label
标签控件:显示用户不能编辑的文本,用户无法编辑。基本用法:
label.Text=””显示文本;
label.Visible=true/false是否隐藏控件。
2.Button
控件:允许用户通过单击来执行某种操作。
基本用法:
1)button.Text=””在按钮上显示文本;
单击Button控件引发Click 事件,
private void button_Click(object sender,EventArags e)。
2)窗体的AcceptButton属性设置了用户每次按下Enter键都会 触发的按钮控件,
this.AcceptButton=button。
3)窗体的CancelButton属性设置了用户每次按下Esc键都会触 发的按钮控件,
this.CancelButton=button。
4)OnMouseEnter和OnMouseLeave事件实现鼠标指针移入移 出按钮控件时触发的事件。
3.TextBox
文本框控件:获取用户输入的数据或者显示文本,用户可
以进行编辑,也可以设置成只读控件。基本用法:
1)textBox.ReadOnly=true/false设置控件是否为只读。
2)textBox.Text.Trim()方法可以将当前文本框中的字符串的前面 和末尾的空白字符全部移除。
3)textBox.Focus()
方法使光标焦点处于文本框中。
4)textBox.PasswordChar=’’设置输入密码时文本框中显示的是 设置好的字符,
textBox.UseSystemPasswordChar=true/false 设置输入密码时文本框中显示的是系统默认的字符’*’。
5)textBox.BorderStyle属性设置文本框的边框类型。
6) textBox.Multiline=true/false设置文本框控件可以输入多行数据。
7)textBox.Width=和textBox.Height=属性设置文本框的宽和高。
8)textBox.SelectionStart=Index属性和textBox.SelectionLength= 属性设置选择文本框中字符串的起始位置索引和要选择的长度。
9)TextChanged事件设置当文本框中的文本发生更改时引发的事件,private void textbox_TextChanged(object gender,EventArgs e)
4.ComboBox

07.窗体传值(重点)
思路:从Login窗体传递登陆用户名到Main窗体,可以在Main窗体中定义一个公有的变量,然后在Login窗体的登陆按钮事件中编写如下代码:
Main frm=new Main();
frm.name=txtName.Text;
frm.Show();
然后在Main的load事件中为Label控件赋值。

解析:1.在接受值的窗体中定义个变量.

2.在显示Main窗体之前(Show之前)把值赋予name,

3.如上图1中在Load中显示.
08.一些例题
01.制作计算器

主要核心代码(在计算按钮下):
private void button_jisuan_Click(object sender, EventArgs e)
{
if (textBox_one.Text!=""&& textBox_three.Text!="")
{
double num1 = Convert.ToDouble(textBox_one.Text);
double num2 = Convert.ToDouble(textBox_three.Text);
String num = comboBox_two.Text;
double result;
switch (num)
{ case "+":
result = num1 + num2;
textBox_jieguo.Text = result.ToString();
break;
// MessageBox.Show(result.ToString());
case "-":
result = num1 - num2;
textBox_jieguo.Text = result.ToString();
break;
case "*":
result = num1 * num2;
textBox_jieguo.Text = result.ToString();
break;
case "/":
result = num1 / num2;
textBox_jieguo.Text = result.ToString();
break;
default:
break; }
}
if (textBox_one.Text=="")
{
MessageBox.Show("请输入第一个数","提示");
}
if (textBox_three.Text == "")
{
MessageBox.Show("请输入第二个数","提示"); }
if (comboBox_two.Text=="")
{
MessageBox.Show("请选择运算符","提示"); } }
2."日期"组合框中的月份改变后日会随之改变:如1-31,2-29,4-30

主要核心代码:
01.在Load中
private void data_Load(object sender, EventArgs e)
{
for (int i = 1; i <=12; i++)
{
comboBox_yue.Items.Add(i);
} }
02.在月的SelectedexChanged事件中:
private void comboBox_yue_SelectedIndexChanged(object sender, EventArgs e)
{
string result = comboBox_yue.Text;
comboBox_ri.Items.Clear();
switch (result)
{
case "":
case "":
case "":
case "":
case "":
case "":
case "":
for (int i = ; i <= ; i++)
{
comboBox_ri.Items.Add(i);
} break;
case "":
case "":
case "":
case "":
for (int i = ; i <= ; i++)
{
comboBox_ri.Items.Add(i);
}
break;
case "":
for (int i = ; i <= ; i++)
{
comboBox_ri.Items.Add(i);
}
break; default:
break;
}
}
3.猜数游戏(有提示.且在开始之前 "猜一猜"不能用,点了"新游戏"后才能用)


核心代码:
public partial class Guess : Form
{
public Guess()
{
InitializeComponent();
}
public int num = ;//定义为接收随机数
public int count = ;
//在"新游戏"的Click事件中
private void button_new_Click(object sender, EventArgs e)
{
textBox_num.Clear();//清除上次显示记录
button_guess.Enabled = true;//使"猜一猜"按钮可用了
Random r = new Random();//为产生随机数
num=r.Next(,); //产生1-5之间的随机整数(包括1,不包括5)
} //在"猜一猜"按钮的Click事件中
private void button_guess_Click(object sender, EventArgs e)
{
count++;
int num1 = ;
if (textBox_num.Text == ""){
MessageBox.Show("请输入要猜的数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
if (textBox_num.Text != "")
{
num1 = Convert.ToInt32(textBox_num.Text); if (num > num1)
{ MessageBox.Show("小了,再猜!!!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); }
else if (num < num1)
{
MessageBox.Show("大了,再猜!!!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); }
else
{ MessageBox.Show("恭喜你,猜中了!!一共猜了" + count + "次", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
}
}
窗体==>>初始Windows程序的更多相关文章
- 初始Windows程序
1.属性 窗体标题 Name 窗体的图标 Icon 背景图片 BackgroundImage 背景颜色 BackColor 最大化按钮 MaxIMonBox 最小化按钮 Minimun 窗体边 ...
- 初识Windows程序
首先,我们创建第一个Windows程序,一共分为4个步骤: 1.打开Visual Studio开发工具 2.选择"文件"→"新建"→"项目" ...
- Windows程序内部运行机制 转自http://www.cnblogs.com/zhili/p/WinMain.html
一.引言 要想熟练掌握Windows应用程序的开发,首先需要理解Windows平台下程序运行的内部机制,然而在.NET平台下,创建一个Windows桌面程序,只需要简单地选择Windows窗体应用程序 ...
- Visual Studio 创建C++或C#Windows程序
使用工具Visual Studio,创建一个C++或C#Windows程序,在主窗口中显示“Hello World”,用户可以用鼠标拖动“Hello World”在主窗口中移动 首先创建一个项目 选 ...
- 深入浅出话VC++(1)——Windows程序内部运行机制
一.引言 要想熟练掌握Windows应用程序的开发,首先需要理解Windows平台下程序运行的内部机制,然而在.NET平台下,创建一个Windows桌面程序,只需要简单地选择Windows窗体应用程序 ...
- 通过weburl 启动windows程序
1. 注册表修改 建立一个reg文件 执行导入 以RunLocal协议为例子 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\RunL ...
- Windows程序----初识Windows程序
先来看一些励志名言来激励一下自己吧! 励志名言:每一发奋发奋的背后,必有加倍的赏赐 1.有无目标是成功者与平庸者的根本差别. 2.成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成. 3.当 ...
- windows程序消息机制(Winform界面更新有关)
windows程序消息机制(Winform界面更新有关) 转自:http://www.cnblogs.com/blosaa/archive/2013/05/31/3109586.html 1. Win ...
- 第三章—Windows程序
这一章我都不知道该如何写了,呵呵~~ 毕竟,Win32是一个非常深奥的系统,目前还容不得我这种 小辈在这儿说三道四,不过,我既然是要写给那些入门阶段的朋友们看的,又不是写给那些搞程序设计老鸟看的,所以 ...
随机推荐
- sql2008清空日志
USE[master] GO ALTER DATABASE MeSizeSNS SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE MeSizeSNS ...
- BugTracker.NET的配置
需求管理+任务管理+bug管理+看板管理 要求一定要简单,切忌不要太复杂 之前用的禅道的,功能虽然很强大,但是忒复杂了,用不下去. 几点需要注意的地方: 1.web.config里邮件的地方有好几个地 ...
- Hadoop学习笔记(老版本,YARN之前),MapReduce任务Namenode DataNode Jobtracker Tasktracker之间的关系
一.基本概念 在MapReduce中,一个准备提交执行的应用程序称为“作业(job)”,而从一个作业划分出的运行于各个计算节点的工作单元称为“任务(task)”.此外,Hadoop提供的分布式文件系统 ...
- wndows系统命令总结
window8系统下 打开运行窗口----------鼠标放到任务栏的windows图标下,右击,弹出菜单中如上图或者 打开运行窗口---------按“WIN+R”键, cmd-------打开命令 ...
- POJ 1451 T9
T9 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3083 Accepted: 1101 Description Ba ...
- net组件转化成COM组件
第一步:生成秘钥文件 强名称工具 (Sn.exe) 有助于使用强名称对程序集进行签名.Sn.exe 提供了用于密钥管理.签名生成和签名验证的选项. 1.使用Visual Studio 命令 Visua ...
- 【PRML读书笔记-Chapter1-Introduction】1.1 Example:Polynomial Curve Fitting
书中给出了一个典型的曲线拟合的例子,给定一定量的x以及对应的t值,要你判断新的x对应的t值多少. 任务就是要我们去发现潜在的曲线方程:sin(2πx) 这时就需要概率论的帮忙,对于这种不确定给t赋何值 ...
- MyBatis知多少(11)企业数据库
企业数据库比应用程序数据库更大,其外部影响也更大.它们与其他系统之间存在更多的关系,包括依赖关系和被依赖关系.这些关系可能是Web应用程序与报表工具之间的,但也很有可 能是与其他的复杂系统和数据库的接 ...
- 【目录】C#操作Excel组件Spire.XLS系列文章目录
本博客所有文章分类的总目录链接:http://www.cnblogs.com/asxinyu/p/4288836.html 1.C#操作Excel组件Spire.XLS文章目录 1.[原创].NET读 ...
- ECMASCRIPT 6中字符串的新特性
本文将覆盖在ECMAScript 6 (ES6)中,字符串的新特性. Unicode 码位(code point)转义 Unicode字符码位的长度是21位[2].而JavaScript的字符串,是1 ...