WIN32 alatt hogyan tölthetek be file-ból ikonképet statikus ablakba?
A program:
hwnd2 = CreateWindow("static",
"Ikon", WS_CHILD | WS_VISIBLE | SS_SIMPLE | SS_ICON | SS_REALSIZEIMAGE, 40, 40, 32, 32,
hwnd,
(HMENU)(XY), (HINSTANCE)GetWindowLong(hwnd, GWLP_HINSTANCE), NULL);
hIcon1 = (HICON)LoadImage(NULL,
"C:\\path\\icon.ico",IMAGE_ICON,0,0,LR_LOADFROMFILE);
if(hIcon1 == NULL)
{ 1.hibajelzés }
if(!SendMessage(hwnd2, STM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon1))
{ 2.hibajelzés }
A 2. hibajelzés fut le. A hwnd2 készítés lefut, látszik az ablak.
Mi lehet a probléma?
Majd én ráguglizok neked: Return value
The return value is a handle to the image previously associated with the static control, if any; otherwise, it is NULL.
Tehát, ha a SendMessage visszatérési érteke NULL az nem hiba.
Igaz.
De kipróbáltam, hogy kettő SendMessage-t hívok meg, és a második még mindig nullával tér vissza.
Tehát az első nem tudott értéket adni.
Kipróbáltam ezt is: Static_SetIcon(hwnd2,hIcon1); Static_setimage nem létezik.
És ezt is: if(!DrawIcon(GetDC(hwnd), 10, 20, hIcon1)) hibajelzés: nem jelez hibát.
hwnd a fő ablak.
Az ikon egyik esetben sem jelenik meg.
Normál, 32*32-es ikon.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!