Visual C#是微软公司推出的新一代程序开发语言,是微软.Net框架中的一个重要组成部分。屏幕保护程序是以scr为扩展名的标准Windows可执行程序。C#屏幕保护程序不仅可以延长显示器的使用寿命,还可以保护私人信息。本文向大家介绍一个.Net平台上用C#编写的一个动态文本及图形的C#屏幕保护程序。
具体实现步骤:
1.在Visual Studio.Net下新建一个C#的Windows应用程序工程,不妨命名为screen_saver。
2.现在我们来设计程序的主界面:
先将窗体的Name属性设置为screen、Text属性设置为空,BackColor属性设置为Black、Size属性设置为(800, 600)、 ControlBox、MaximizeBox、MinimizeBox、ShowInTaskbar属性设置均为false、 FormBorderStyle属性设置为None。再往窗体上添加Label控件、PictureBox控件、Timer控件各一个。将Label控件的Name设置为word、Text属性设置为空;将PictureBox控件的Name设置为picture1、Image设置为一个预知图片;将 Timer控件的Name设置为timerSaver、Enabled 属性设为true、Interval属性设为5。
3.现在我们开始编写完整C#屏幕保护程序代码部分:
- usingSystem;
- usingSystem.Drawing;
- usingSystem.Collections;
- usingSystem.ComponentModel;
- usingSystem.Windows.Forms;
- usingSystem.Data;
- file://
- namespacescreen_saver
- {
- ///
- ///Form1的摘要说明。
- ///
- publicclassscreen:System.Windows.Forms.Form
- {
- file://加入私有成员变量
- privateSystem.ComponentModel.IContainercomponents;
- privateintiSpeed=2;
- privatestringstr="福建南纺股份公司计算机中心";
- file://定义文本字体及大小
- privateSystem.Drawing.FontTextStringFont=newSystem.Drawing.Font("宋体”,10,System.Drawing.FontStyle.Bold);
- privateColorTextStringcolor=System.Drawing.Color.Yellow;file://文本字体颜色
- privateintiDistance;
- privateintixStart=0;
- privateintiyStart=0;
- privateintspeed;
- privateintx1,y1;
- intwidth1,height1;
- privateSystem.Windows.Forms.TimertimerSaver;file://计时器控件
- privateSystem.Windows.Forms.PictureBoxpicture1;file://图形控件
- privateSystem.Windows.Forms.Labelword;file://文本显示控件
- ///
- ///必需的设计器变量。
- ///
- publicscreen()
- {
- file://
- //Windows窗体设计器支持所必需的
- file://
- InitializeComponent();
- word.Font=TextStringFont;
- word.ForeColor=TextStringcolor;
- System.Windows.Forms.Cursor.Hide();file://隐藏光标
- file://
- //TODO:在InitializeComponent调用后添加任何构造函数代码
- file://
- }
- protectedoverridevoidDispose(booldisposing)
- {
- if(disposing)
- {
- if(components!=null)
- {
- components.Dispose();
- }
- }
- base.Dispose(disposing);
- }
- #regionWindowsFormDesignergeneratedcode
- ///
- ///设计器支持所需的方法-不要使用代码编辑器修改
- ///此方法的内容。
- privatevoidInitializeComponent()file://初始化程序中使用到的组件
- {
- this.components=newSystem.ComponentModel.Container();
- System.Resources.ResourceManagerresources=newsystem.Resources.ResourceManger(typeof(screen));
- this.word=newSystem.Windows.Forms.Label();
- this.timerSaver=newSystem.Windows.Forms.Timer(this.components);
- this.picture1=newSystem.Windows.Forms.PictureBox();
- this.SuspendLayout();
- //
- //设置文本显示控件(word)属性
- this.word.ForeColor=System.Drawing.Color.Yellow;
- this.word.Location=newSystem.Drawing.Point(624,8);
- this.word.Name="word";
- this.word.Size=newSystem.Drawing.Size(168,16);
- this.word.TabIndex=0;
- this.word.Visible=false;
- //
- //设置计时器控件(timerSaver)属性
- this.timerSaver.Enabled=true;
- this.timerSaver.Interval=5;
- this.timerSaver.Tick+=newSystem.EventHandler(this.timerSaver_Tick);
- //
- //设置图片控件(picture1)属性
- this.picture1.Image=((System.Drawing.Bitmap)(resources.GetObject("picture1.Image")));
- this.picture1.Location=newSystem.Drawing.Point(800,600);
- this.picture1.Name="picture1";
- this.picture1.Size=newSystem.Drawing.Size(304,224);
- this.picture1.SizeMode=System.Windows.Forms.PictureBoxSizeMode.StretchImage;
- this.picture1.TabIndex=1;
- this.picture1.TabStop=false;
- //
- //设置窗体(screen)属性
- this.AutoScaleBaseSize=newSystem.Drawing.Size(6,14);
- this.BackColor=System.Drawing.Color.Black;
- this.ClientSize=newSystem.Drawing.Size(800,600);
- this.ControlBox=false;
- this.Controls.AddRange(newSystem.Windows.Forms.Control[]{this.picture1,this.word});
- this.FormBorderStyle=System.Windows.Forms.FormBorderStyle.None;
- this.KeyPreview=true;
- this.MaximizeBox=false;
- this.MinimizeBox=false;
- this.Name="screen";
- this.ShowInTaskbar=false;
- this.StartPosition=System.Windows.Forms.FormStartPosition.Manual;
- this.WindowState=System.Windows.Forms.FormWindowState.Maximized;
- file://键盘按下响应事件
- this.KeyDown+=newSystem.Windows.Forms.KeyEventHandler(this.screen_KeyDown);
- file://鼠标按下响应事件
- this.MouseDown+=newSystem.Windows.Forms.MouseEventHandler(this.screen_MouseDown);
- file://窗体启动调用事件
- this.Load+=newSystem.EventHandler(this.Form1_Load);
- file://鼠标移动响应事件
- this.MouseMove+=newSystem.Windows.Forms.MouseEventHandler(this.screen_MouseMove);
- this.ResumeLayout(false);
- }
【编辑推荐】