⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 9.1.txt

📁 《Microsoft Visual C# .NET 2003开发技巧大全》源代码
💻 TXT
字号:
Listing 9.1 ScreenSaverPreview Control Based on the Panel Control
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;
using System.IO;
using System.Diagnostics;
namespace _1_ComCtrlExtension
{
public class ScreenSaverPreviewPanel : System.Windows.Forms.Panel
{
private System.ComponentModel.IContainer components;
private string screenSaver = “”;
private Process saverProcess = null;
private bool launched = false;
public ScreenSaverPreviewPanel()
{
InitializeComponent();
}
protected override void OnPaint(PaintEventArgs e)
{
if( launched == false )
{
try
{
if( saverProcess != null )
{
saverProcess.Kill();
saverProcess = null;
}
if( this.Visible == true && screenSaver != “”)
{
ProcessStartInfo startInfo = new ProcessStartInfo(
screenSaver + “ \”/p “ + this.Handle.ToString() +
“\””, “” );
startInfo.UseShellExecute = false;
saverProcess = Process.Start( startInfo );
launched = true;
}
else
{
this.Visible = false;
}
}
catch( Exception ex )
{
throw new Exception( “Could not launch screensaver”, ex );
}
}
base.OnPaint (e);
}
protected override void Dispose( bool disposing )
{
if( disposing )
{
if( components != null )
components.Dispose();
}
base.Dispose( disposing );
}
#region Component Designer generated code>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
}
#endregion
public string ScreenSaverPath
{
get
{
return screenSaver;
}
set
{
this.Visible = true;
screenSaver = value;
launched = false;
Invalidate();
}
}
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -