一个小C#窗体程序

这程序摘自《Head First in C#》一书,由东南大学出版社影印。

此程序的关键点的很多

1.Application.DoEvents()  //用于看到程序的渐变过程

2.while(Visible)    //为了使程序在未关闭前,背景色一直渐变

3.System.Threading.Thread.Sleep(10)  //程序在10秒后挂起

具体程序代码如下
 此窗体只有一个Button控件,使用Button的Click()事件来触发函数的执行代码如下和解释都在下面的源代码中,只copy出Click()事件中的代码:

 

ContractedBlock.gif ExpandedBlockStart.gif Button_Click()
 
   
1 private void button1_Click( object sender, EventArgs e)
2 {
3 while (Visible)
4 { /* while(Visible)为了使程序在在没有关闭前颜色一直渐变,当关闭的时候突出循环 */
5
6 /* for语句中的c<254&&Visible是为了判断当程序关闭的时候退出循环,不然会产生延时推出程序,因为当关闭的程序的时候,
7 while(Visible)还为检测到,for语句仍在执行,直到两个for循环结束才会返回edit界面 */
8 for ( int c = 0 ; c < 254 && Visible ; c ++ )
9 {
10 this .BackColor = Color.FromArgb(c, 255 - c, c);
11 Application.DoEvents(); // 如果没有此句,程序无法正常执行,点击(X)时没有反应
12 // 此线程在10s后挂起
13   System.Threading.Thread.Sleep( 10 ); // 使北背景颜色变得更慢些,便于观察,整个渐变过程次序10秒钟
14  
15 }
16 for ( int c = 254 && Visible ; c >= 0 ; c -- ) // 返回初始的颜色
17   {
18 this .BackColor = Color.FromArgb(c, 255 - c, c);
19 Application.DoEvents();
20 System.Threading.Thread.Sleep( 10 );
21 }
22 }
23 }

 

 

 

转载于:https://www.cnblogs.com/wwan/archive/2010/04/02/1703168.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值