using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace three13
{
public partial class Form1 : Form
{
int count;
int time;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
int i;
for (i = 1; i < 11; i++)
{
/*comboBox1.Items.Add(i.ToString()+"秒");*/
}
label3.Text = "";
}
private void timer1_Tick(object sender, EventArgs e)
{
time--;//记当前秒
count++;
label3.Text = time.ToString()+"秒";//显示剩余时间
progressBar1.Value = count;//设置进度条进度
if (time==0)
{
timer1.Stop();//时间到,停止
System.Media.SystemSounds.Asterisk.Play();//提示音
MessageBox.Show("时间到了", "提示");//弹出提示框
}
}
private void button1_Click(object sender, EventArgs e)//开始计时按钮事件
{
string str = comboBox1.Text;
while (true)
{
if(!int.TryParse(comboBox1.Text, out time) || time <= 0)
{
MessageBox.Show("输入错误,请重新输入!", "错误"); // 输入验证失败,显示错误提示
return; // 终止计时器启动
}
else
{
progressBar1.Maximum = time;//进度条最大值
timer1.Start();//开始计时
break;
}
}
}
}
}
组件:
1、ComboBox(显示一个可编辑的文本框,其中包含一个允许值下拉列表)
添加下拉列表,可以在加载程序中使用for循环进行编写,也可以在属性界面里的Itmes进行添加,也可以在AutoCompleteCustomSource里面进行添加(不清楚这两者的区别)
2、Form(窗口组件)
设置其属性FromBorderStyle为FixedSingle(单线边框,不随窗体大小改变而改变),将MaxmizeSize设置成false(最大化无法使用,但是最大化的图标还在,不知道怎么隐藏)
3、Button(按钮)
text设置成开始计时
4、label(文字)
5、ProgressBar(一个操作进度的填充条)