MFC实现Windows锁屏
編輯
Windows鎖屏
????????鎖屏軟件相信大家都見過,以前我去網(wǎng)吧上網(wǎng)的時(shí)候也用過這個(gè)功能,當(dāng)你有事情需要立即離開,而又不想讓別人碰你的電腦,就需要用掃鎖屏軟件啦,鎖住屏幕之后等回來的時(shí)候再輸入密碼解鎖。
? ? ????同樣的,今天給大家?guī)淼氖且粋€(gè)鎖屏軟件的實(shí)現(xiàn),不過我們的軟件比起網(wǎng)吧的鎖屏功能可就炫酷得多啦。首先我們打開界面第一個(gè)看到的就是下面圖片中顯示的這樣。軟件有三個(gè)對話框和兩個(gè)按鈕,前面兩個(gè)對話框是用來輸入鎖屏密碼以及確認(rèn)密碼的。第三個(gè)對話框則是鎖屏之后輸入密碼解鎖的地方。當(dāng)我們輸入密碼,并且再次輸入確認(rèn)密碼之后,電腦就會實(shí)現(xiàn)鎖屏的效果啦。同時(shí)鼠標(biāo)的箭頭也無法跳出這個(gè)軟件大小的范圍了。
編輯
Windows鎖屏軟件
????????當(dāng)我們按照步驟把鎖屏密碼輸入并確認(rèn)之后,輸入密碼框就都被隱藏了,同時(shí)任務(wù)欄也會被隱藏,界面上顯示系統(tǒng)已安全鎖定,可以離開啦~~~
編輯
鎖屏中
當(dāng)我們把鎖屏的密碼輸入解鎖密碼框之后,點(diǎn)擊系統(tǒng)解鎖,就會退出鎖屏頁面啦~~~
下面我們來看代碼:
void CSystemLockDemoDlg::OnBnClickedSetlock()
{
// TODO:? 在此添加控件通知處理程序代碼
if (user == 0)
{
GetDlgItemText(IDC_SET, PASSWORD1);
GetDlgItemText(IDC_SETAGAIN, PASSWORD2);
if (PASSWORD1 != PASSWORD2)
{
SetDlgItemText(IDC_MESSAGE, "系統(tǒng)鎖定密碼兩次不一致\n請重新輸入鎖定密碼.");
SetDlgItemText(IDC_SET, "");
SetDlgItemText(IDC_SETAGAIN, "");
GetDlgItem(IDC_SET)->SetFocus();
return;
}
if (PASSWORD1 == "")
{
SetDlgItemText(IDC_MESSAGE, "系統(tǒng)鎖定密碼不能為空\n處于安全考慮請重新設(shè)置!");
GetDlgItem(IDC_SET)->SetFocus();
return;
}
SetDlgItemText(IDC_MESSAGE, "系統(tǒng)已安全鎖定中......\n可以安全離開...");
SendDlgItemMessage(IDC_SET, EM_SETREADONLY, 1);
SendDlgItemMessage(IDC_SETAGAIN, EM_SETREADONLY, 1);
SendDlgItemMessage(IDC_UNLOCK, EM_SETREADONLY, 0);
SetDlgItemText(ID_SETLOCK, "系統(tǒng)解鎖");
SetDlgItemText(IDC_SET, "");
SetDlgItemText(IDC_SETAGAIN, "");
GetDlgItem(ID_QUIT)->EnableWindow(false);
user = 1;
CRect rct;
GetWindowRect(rct);
ClipCursor(rct);
SystemParametersInfo(SPI_SETSCREENSAVERRUNNING, true, 0, SPIF_UPDATEINIFILE);
::ShowWindow(::FindWindow("Shell_TrayWnd", NULL), SW_HIDE);
GetDlgItem(IDC_UNLOCK)->SetFocus();
return;
}
if (user == 1)
{
GetDlgItemText(IDC_UNLOCK, PASSWORD3);
if (PASSWORD1 != PASSWORD3)
{
SetDlgItemText(IDC_MESSAGE, "系統(tǒng)解鎖密碼錯(cuò)誤\n你無權(quán)使用此系統(tǒng)!");
SetDlgItemText(IDC_UNLOCK, "");
GetDlgItem(IDC_UNLOCK)->SetFocus();
return;
}
SetDlgItemText(IDC_MESSAGE, "已經(jīng)成功解鎖操作......");
SendDlgItemMessage(IDC_SET, EM_SETREADONLY, 0);
SendDlgItemMessage(IDC_SETAGAIN, EM_SETREADONLY, 0);
SendDlgItemMessage(IDC_UNLOCK, EM_SETREADONLY, 1);
SetDlgItemText(ID_SETLOCK, "系統(tǒng)加鎖");
SetDlgItemText(IDC_UNLOCK, "");
GetDlgItem(ID_QUIT)->EnableWindow(true);
user = 0;
ClipCursor(NULL);
SystemParametersInfo(SPI_SETSCREENSAVERRUNNING, false, 0, SPIF_UPDATEINIFILE);
::ShowWindow(::FindWindow("Shell_TrayWnd", NULL), SW_SHOW);
}
}
????????由于篇幅所限,就不把全部的代碼貼出來啦,大家可以點(diǎn)擊左下角的閱讀原文,去群里下載哦!!!
關(guān)注轉(zhuǎn)發(fā)點(diǎn)個(gè)贊唄
總結(jié)
以上是生活随笔為你收集整理的MFC实现Windows锁屏的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为手机官网(华为手机官网正品旗舰店)
- 下一篇: fate电脑壁纸高清壁纸(fate超清电