Elaine |
» 2010-02-17 21:42:34 Facet, ja nigdy z tobą nie rozmawiałem, nie wiem, co sobie uroiłeś. |
|
DejaVu |
» 2010-02-18 03:11:17 Fajnie, że rozwiązałeś problem ale mógłbyś go przedstawić na forum. |
|
szyx_yankez Temat założony przez niniejszego użytkownika |
» 2010-02-18 06:43:20 F.a.l masz rację.Pomyliłem Cię z kimś innym.Sorry. A co do problemu. #define WS_EX_LAYERED 0x00080000 #include <allegro.h> #include <winalleg.h> #include <windows.h>
int WINAPI WinMain( HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nFunsterStil ) { allegro_init(); int width; int height; get_desktop_resolution( & width, & height ); height -= 20; set_gfx_mode( GFX_AUTODETECT_WINDOWED, width, height, 0, 0 ); set_color_depth( desktop_color_depth() ); install_keyboard(); COLORREF cr; BYTE bAlpha; DWORD dwFlags; #define LWA_COLORKEY 1 #define LWA_ALPHA 2 typedef BOOL( WINAPI * lpfn )( HWND hWnd, COLORREF cr, BYTE bAlpha, DWORD dwFlags ); lpfn g_pSetLayeredWindowAttributes; HMODULE hUser32; HWND hWnd = win_get_window(); WM_CREATE; if( WM_CREATE ) hUser32 = GetModuleHandle( "USER32.DLL" ); g_pSetLayeredWindowAttributes =( lpfn ) GetProcAddress( hUser32, "SetLayeredWindowAttributes" ); if( g_pSetLayeredWindowAttributes == NULL ) MessageBox( hWnd, "Przezroczystość nie jest dostępna w tej wersji Windowsa :(", "Niestety", MB_ICONEXCLAMATION ); SetWindowLongPtr( hWnd, GWL_STYLE, WS_POPUP | WS_VISIBLE ); SetWindowPos( hWnd, 0, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED ); MoveWindow( hWnd, 0, 0, width, height, TRUE ); SetWindowPos( hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE ); SetWindowLongPtr( hWnd, GWL_EXSTYLE, GetWindowLongPtr( hWnd, GWL_EXSTYLE ) | WS_EX_LAYERED ); MoveWindow( hWnd, 0, 20, 1280, 1024, TRUE ); g_pSetLayeredWindowAttributes( hWnd, makecol( 255, 255, 255 ), 0, LWA_COLORKEY ); while( !key[ KEY_ESC ] ) { } allegro_exit(); return 0; }
|
|
Elaine |
» 2010-02-18 11:40:14 Weź nie sprawdzaj, czy WM_CREATE jest niezerowe. Na pewno nie jest - zerowe jest tylko WM_NULL. |
|
szyx_yankez Temat założony przez niniejszego użytkownika |
» 2010-02-18 16:08:17 Ok .Dzięki f.a.l. |
|
1 « 2 » |