[WinAPI, C++] HFONT a void *
Ostatnio zmodyfikowano 2015-10-10 23:37
Cansisti Temat założony przez niniejszego użytkownika |
[WinAPI, C++] HFONT a void * » 2015-10-10 23:21:07 Cześć Chcę napisać funkcję która będzie tworzyć czcionkę w Winapi i zapisywać ją pod podanym adresem. Chcę też żeby funkcja przyjmowała adres zmiennej HFONT jako void*, ponieważ ma też obsługiwać inne typy. Najlepiej pokazać na kodzie: int getI( GetIType v, void * a ) { switch( v ) { case Font: { HFONT hFont =( HFONT ) GetStockObject( DEFAULT_GUI_FONT ); LOGFONT theFont; GetObject( hFont, sizeof( LOGFONT ), & theFont ); theFont.lfHeight = - 15; theFont.lfWeight = 300; HFONT hFont2 = CreateFontIndirect( & theFont ); a = hFont2; return 0; } } return - 1; }
Użycie funkcji w taki sposób: HFONT hFont = NULL; WinEz::getI( Font, hFont ); SendMessage( hwndt, WM_SETFONT,( WPARAM ) hFont, true );
Nie działa (hFont jest nadal równe NULL) P.S. Apropos, czym dokładnie jest HFONT, bo z tego co widzę chyba wskaźnikiem (na co?) Problem rozwiązany, musiałem doczytać jak używać wskaźnika void :) |
|
pekfos |
» 2015-10-10 23:37:28 Nie działa (hFont jest nadal równe NULL)
|
Bo nie zmieniasz hFont. |
|
« 1 » |