这里介绍我们把新创建C# Windows窗体应用程序命名为TaskbarForm。我们创建用于显示的字符串和其颜色的变量,再定义几个Rectangle对象的变量用于放置标题、提示内容以及可以拖动窗体的区域和关闭按钮的区域。
发动Visual Studio .Net 2005,创立C# Windows窗体应用程序,将解决方案命名为TaskbarForm,包括的项目名也为TaskbarForm,首要创立程序的主窗体Form1,在上面增加两个Button控件,一个用于显现告诉窗体,另一个则停止程序。然后在解决方案管理器中右击项目,单击"增加 - Windows 窗体",咱们把新创立C# Windows窗体应用程序命名为TaskbarForm。
在类TaskbarForm界说的下方,咱们创立用于显现的字符串和其色彩的变量,再界说几个Rectangle目标的变量用于放置标题、提示内容以及能够拖动窗体的区域和封闭按钮的区域。然后,咱们需求保存窗体在起浮时的高度以便核算移 动后的新高度,intervalValue变量用来确认窗体显现和躲藏的速度。进行渠道调用时咱们需求提早界说好常量的值用来传递给函数,WM_NCLBUTTONDOWN和HT_CAPTION常量用于拖动窗体,他们的值都保存在WinUser.h头文件中,所对应的动态链接库名为:user32.dll。咱们用到的Win32API为:SendMessage、 ReleaseCapture和ShowWindow,经过运用DllImportAttribute能够导入相应的函数并在程序中从头进行界说,如下:
- [DllImportAttribute("user32.dll")]
- publicstaticexternintSendMessage(IntPtrhWnd,intMsg,intwParam,intlParam);
- //发送音讯//winuser.h中有函数原型界说
- [DllImportAttribute("user32.dll")]
- publicstaticexternboolReleaseCapture();//开释鼠标捕捉winuser.h
- [DllImportAttribute("user32.dll")]//winuser.h
- privatestaticexternBooleanShowWindow(IntPtrhWnd,Int32nCmdShow);
SendMessage向音讯循环发送标题栏被按下的音讯来模仿窗体的拖动,ShowWindow用来将特定句柄的窗体显现出来,留意第二个参数nCmdShow,它表明窗体应该怎样显现出来,而咱们需求窗体不取得焦点显现出来,SW_SHOWNOACTIVATE能够满意咱们要求,持续在WinUser.h文件中查找找到该常量对应的值为4,所以咱们就能够这样调用来显现窗体了:
- ShowWindow(this.Handle,4);
咱们创立了一个自界说函数ShowForm用来封装上面的ShowWindow用来是显现窗体,一起传递了所用到的几个Rectangle矩形区域目标,最终调用ShowWindows函数将窗体显现出来,代码片段如下:
- publicvoidShowForm(stringftitletext,stringfcontenttext,
RectanglefRegionofFormTitle,RectanglefRegionofFormTitlebar,
RectanglefRegionofFormContent,RectanglefRegionofCloseBtn)- {
- titleText=ftitletext;
- contentText=fcontenttext;
- WorkAreaRectangle=Screen.GetWorkingArea(WorkAreaRectangle);
- this.Top=WorkAreaRectangle.Height+this.Height;
- FormBorderStyleFormBorderStyle=FormBorderStyle.None;
- WindowState=FormWindowState.Normal;
- this.SetBounds(WorkAreaRectangle.Width-this.Width,
WorkAreaRectangle.Height-currentTop,this.Width,this.Height);- CurrentState=1;
- timer1.Enabled=true;
- TitleRectangle=fRegionofFormTitle;
- TitlebarRectangle=fRegionofFormTitlebar;
- ContentRectangle=fRegionofFormContent;
- CloseBtnRectangle=fRegionofCloseBtn;
- ShowWindow(this.Handle,4);//#defineSW_SHOWNOACTIVATE4
- }
以上介绍创立C# Windows窗体应用程序。
【修改引荐】
- C#与VB7比较详解
- C#衔接Access浅析
- C#创立XML Web services学习经历
- C# Windows应用程序概述
- C# SmartPhone程序学习笔记
知优网 » 创立C# Windows窗体应用程序浅析(c#语言windows窗体应用)