main方法:位于Program.cs文件,表示Windows窗体程序的入口。 示例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
namespace MyForm
{
	static class Program
      {
           //code
           static void Main( )
           {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());		//启动窗体
           }
      }
}

1.Label标签

作用:显示静态文字(不可编辑),经常用来提示输入、输出结果等,常用属性Text,表示其上显示的文本。 示例1:

1
string s = label1.Text;	//读取文本

示例2:

1
label1.Text=“要显示的文字”; //显示文本

2.Butten按钮

作用:显示一个按钮,单击时执行一个操作。 常用属性:Text按钮文本 常用事件:Click单击事件

3.TextBox文本框

常用属性Text,表示其中的文本; 常用事件TextChanged,文本变化时触发。 示例1:

1
string s = textBox1.Text; //读取文本

示例2:

1
textBox1.Text=“要显示的文字”; //显示文本

其他:数值和字符串互相类型转换

1
2
doule.Parse(textBox1.Text)
textBox1.Text=10.ToString();

4.RadioButton单选框

特点:多选一,互斥。 常用属性:Checked,表示是否选中。 示例1:

1
2
3
4
if(radioButton1.Checked) //如果选中则做某项工作
{
	//code
}

示例2:

1
radioButton1.Checked = true; //设置选中

5.CheckBox复选框

特点:多个选项,多选多。 是否选中:Checked属性。 示例1:

1
2
3
4
if(checkBox1.Checked) //如果选中则做某项工作
{
	//code
}

示例2:

1
checkBox1.Checked = true; //设置选中

6.Timer定时器

作用:用于周期性的执行任务。

重要属性: - Interval:定时间隔,以毫秒为单位 - Enabled:是否启动计时

重要事件: - Tick:定时间隔到达

7.对话框操作

制作一个简单的对话框。

1
2
3
4
5
6
7
8
        private void button1_Click(object sender, EventArgs e)
        {
           DialogResult result = MessageBox.Show("简单对话框","这是标题",MessageBoxButtons.OKCancel);
           if (result == DialogResult.OK)   //点击“确定”,则关闭form,点击取消,则关闭对话框
           {
               this.Close();
           }
        }

8.题目设计1——倒计时

要求:一个Label文字为10。一个按钮,文字为“开始”,点一下,开始倒计时,文字变为停止。按钮用于切换开始和停止倒计时。倒计时到了0自动停止,不能出现负数。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace test1
{
    public partial class Form3 : Form
    {
        public Form3()
        {
            InitializeComponent();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
           int n = int.Parse(label1.Text);
           if (n > 0)
           {
               n--;
               label1.Text = n.ToString();
           }
           else
           {
               timer1.Enabled = false;
           }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (button1.Text == "开始")
            {
                button1.Text = "停止";
                timer1.Enabled = true;
            }
            else
            {
                button1.Text = "开始";
                timer1.Enabled = false;
            }
        }
    }
}

9.题目设计2——导弹发射

要求:(挺多…) 1. 窗体底部,有个“发射”按钮,旁边一个PictureBox放一个导弹图片。 2. 点击“开始”,从3开始倒计时。 3. 倒计时到0时,导弹开始向上移动,直到移出窗体。 4. 共有3颗炮弹。点击发射按钮,则发射1颗炮弹。 5. 上一颗炮弹发射后,自动装填下一颗,即下一颗炮弹显示在发射初始位置。 6. 全部发射完毕后,不能再装填和发射。 7. 同一时间只能发射一颗炮弹,即:如果有一颗炮弹在运行过程中,则不能再次发射其他炮弹。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace test
{
    public partial class Form1 : Form
    {
        int a=3;
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //确认有剩余炮弹
            if (timer1.Enabled == true) return;
            //确认处于非发射状态
            if (a==0) return;
                a--;
                label3.Text = a.ToString();
                timer1.Enabled = true;
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            int n = int.Parse(label1.Text);
            if (n > 0)
            {
                n--;
                label1.Text = n.ToString();
            }
            else
                {
                 pictureBox1.Top -= 10;
                 timer1.Interval = 30;
                 if (pictureBox1.Top <= 0)
                 {
                     timer1.Enabled = false;
                     pictureBox1.Top = button1.Top - 105;
                     //label1.Text = "3";
                 }
                }
            }
        }
    }