Ответить на сообщение
Вернуться к теме
Вы отвечаете на сообщение:
Автор: EXP (14.01.2010 в 19:30) не смотрел картинку , и незнаю как в Borland , но прозрачность это нужно создать окно со стилем WS_EX_LAYERED (только для главного окна) и вызвать SetLayeredWindowAttributes() а с ресурсами обычно вызывается LoadLibrary('эту длл') потом с помощью её хэндла достают ресурсы , например при создании окна можно так достать иконку 1111 из netshell.dll
#define _WIN32_WINNT 0x0500 //приходится объявлять в MSVC для всяких украшательств #include <windows.h> #pragma comment(linker, "/ENTRY:EntryPoint") // no main char wTitle[] ="xWinClass"; WNDCLASSEX wc = {sizeof(wc), CS_HREDRAW|CS_VREDRAW , 0, 0, 0 , 0, 0, 0 , (HBRUSH) 6, 0, wTitle, 0}; HWND hWnd; LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { return DefWindowProc(hwnd,message,wParam,lParam); } int EntryPoint() { HANDLE hLibrary; MSG msg; if( (hLibrary = LoadLibraryEx("netshell.dll", NULL, LOAD_LIBRARY_AS_DATAFILE )) == NULL ) MessageBox( 0, "Error Loading File - Choose a 32bit DLL or EXE", "!!!", MB_OK ); wc.hInstance= GetModuleHandle(NULL); wc.hIcon= LoadIcon(hLibrary, (LPCSTR) 1111); wc.hCursor= LoadCursor(NULL, IDC_ARROW); wc.lpfnWndProc= WndProc; RegisterClassEx(&wc); hWnd = CreateWindowEx( WS_EX_LAYERED ,wTitle ,wTitle ,WS_OVERLAPPEDWINDOW|WS_CAPTION| WS_DLGFRAME, CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT, 0,0, (HINSTANCE) 0x400000,0); SetLayeredWindowAttributes(hWnd, 0, // COLORREF crKey, 0xA0, // прозрачность 0-255 BYTE bAlpha, LWA_ALPHA // |LWA_COLORKEY DWORD dwFlags ); ShowWindow(hWnd, SW_SHOWNORMAL); while (GetMessage(&msg,0,0,0)) { TranslateMessage(&msg); DispatchMessage(&msg); } ExitProcess( (UINT) msg.wParam ); return 0; }
Ваше имя:
Пароль:
Цитировать Используйте тэги для выделения текста: Код: [code][/code] Жирный: [b][/b] Наклонный: [i][/i] URL: [url][/url]
Сообщение:
Прикрепить: