在Windows 10上调用LoadIcon
要求标准图标IDI_INFORMATION
会生成此图标:
另一方面,调用MessageBox
传递IDI_INFORMATION
会产生一个使用此图标的对话框:
如果对LoadIcon
的明显调用没有这样做,我怎样才能获得第二个图标?
答案 0 :(得分:4)
这感觉就像user32.dll中的一个错误,但Windows 8有同样的问题,所以我想微软并不关心。
您可以通过致电SHGetStockIconInfo
获取print("")
print("-----------------------------------------------------------------------------------------------------------------------------------------------------------")
print("| (1) Enter new student details | (2) Edit existing student details | (3) Retrieve Student details |")
print("-----------------------------------------------------------------------------------------------------------------------------------------------------------")
print("")
option=int(input("Select an option from the menu, 1/2/3/: "))
if option==1:
f=open("Student Details.xls" , "w")
f.write("Forename"+"\n")
fname=input("Enter the student's first name: ")
f.write(fname)
f.write("Surname"+"\n")
sname=input("Enter the student's surname: ")
f.write(sname)
f.write("DOB"+"\n")
dob=input("Enter the student's DOB: ")
f.write(dob)
f.write("Postcode"+"\n")
pcode=input("Enter the student's postcode: ")
f.write(pcode)
使用的平面图标:
Forename Surname DOB Postcode
Jim Bob 12/12/12 w7 1eu
SELECT CONCAT(user_a, ",", user_b, ",", user_c) FROM tb_loterijos_laimetojai
是在Vista及更高版本的Windows UI中使用图标的文档化方法。大多数图标来自imageres.dll,但您不应该认为是这种情况......
答案 1 :(得分:0)
我们可以尝试下一个代码进行测试/演示
MSGBOXPARAMSW mbi = {
sizeof(mbi),
HWND_DESKTOP,
NULL,
L"lpszText",
L"lpszCaption",
MB_USERICON,
IDI_INFORMATION
};
MessageBoxIndirectW(&mbi);
if (HMODULE hmodImageRes = LoadLibraryEx(L"imageres", 0, LOAD_LIBRARY_AS_DATAFILE))
{
mbi.hInstance = hmodImageRes;
mbi.lpszIcon = MAKEINTRESOURCE(81);
MessageBoxIndirectW(&mbi);
FreeLibrary(hmodImageRes);
}
当Windows 7上的第二个相同图标和Windows 8.1和Windows 10上的时。
来自 imageres.dll 的 MAKEINTRESOURCE(81)以某种方式记录并保持稳定 - 我怀疑所以在LoadIcon(hmodImageRes, MAKEINTRESOURCE(81))
HMODULE hmodImageRes = LoadLibraryEx(L"imageres", 0, LOAD_LIBRARY_AS_DATAFILE)
或LoadLibrary(L"imageres")
update `table_name`
set `field_name` = `field_name`-1
where `field_name` is not null and `field_name` != 0;
获取第二个图标