c#屏保功能實現


 public Form1()

 {            

       InitializeComponent();   

}

#region  當一段時間無操作時,自動執行返回初始界面  

 [StructLayout(LayoutKind.Sequential)]

 struct LASTINPUTINFO        

{            

[MarshalAs(UnmanagedType.U4)]  

 public int cbSize;            

[MarshalAs(UnmanagedType.U4)]            

public uint dwTime;        

}        

 

[DllImport("user32.dll")]        

static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);        

static long GetLastInputTime()        

{            

LASTINPUTINFO vLastInputInfo = new LASTINPUTINFO();            

vLastInputInfo.cbSize = Marshal.SizeOf(vLastInputInfo);            

if (!GetLastInputInfo(ref vLastInputInfo))

    return 0;            

return Environment.TickCount - (long)vLastInputInfo.dwTime;        

}        

#endregion

//加載事件       

private void Form1_Load(object sender, EventArgs e)        

{            

          this.timer1.Start();        

}

//時間控制        

private void timer1_Tick(object sender, EventArgs e)        

{

            if (GetLastInputTime() / 1000 == 10)    //10s            

           {

                label1.Text = "屏保";

            }

            else

                label1.Text = (GetLastInputTime() / 1000).ToString();

           }

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM