我在哪裏可以通過WinApi找到messageboxes的標準系統圖標?我想創建一個先進的對話框(帶有細節擴展)爲WINAPI資源,但我想使用系統默認的圖標,如:我在哪裏可以通過WinApi找到messageboxes的標準系統圖標?
對於.NET我知道我會在System.Drawing.SystemIcons
找到他們,但我在哪裏可以找到他們使用本機C和WinApi?我怎麼能申請他們?
我在哪裏可以通過WinApi找到messageboxes的標準系統圖標?我想創建一個先進的對話框(帶有細節擴展)爲WINAPI資源,但我想使用系統默認的圖標,如:我在哪裏可以通過WinApi找到messageboxes的標準系統圖標?
對於.NET我知道我會在System.Drawing.SystemIcons
找到他們,但我在哪裏可以找到他們使用本機C和WinApi?我怎麼能申請他們?
你應該可以使用LoadIcon
。要獲得問號圖標使用LoadIcon(NULL, IDI_QUESTION)
,其他標識符是IDI_ERROR
,IDI_WARNING
和IDI_INFORMATION
。
那是正確的,
如果這裏有人需要我的代碼設置圖標,並播放相應的聲音。
HICON hIcon = NULL;
if(mbdIcon == MBD_ICON_INFORMATION) {
hIcon = LoadIcon(NULL, IDI_INFORMATION);
MessageBeep(MB_ICONASTERISK);
} else if(mbdIcon == MBD_ICON_QUESTION) {
hIcon = LoadIcon(NULL, IDI_QUESTION);
MessageBeep(MB_ICONQUESTION);
} else if(mbdIcon == MBD_ICON_WARNING) {
hIcon = LoadIcon(NULL, IDI_WARNING);
MessageBeep(MB_ICONWARNING);
} else if(mbdIcon == MBD_ICON_ERROR) {
hIcon = LoadIcon(NULL, IDI_ERROR);
MessageBeep(MB_ICONERROR);
} else {
ShowWindow(hPictureIcon, SW_HIDE);
}
if(hIcon != NULL)
{
Static_SetIcon(hPictureIcon, hIcon);
}
可以節省一些人幾分鐘。 :)
我可以建議你把這個編輯成你的問題嗎? – BlackBear
我認爲這可能會改變對這個問題和這個答案的理解。更好的是它是一個獨立的答案。 –