| Цитата | Помогите пожалуйста бедному студенту получить зачет
|
А для чего же Вы учитесь, бедный студент?
| Код | #include <windows.h>
char szClassName[] = "EllipseWindowsApp";
LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_NCHITTEST: { LRESULT currentArea = DefWindowProc(hwnd, message, wParam, lParam);
return (HTCLIENT == currentArea) ? HTCAPTION : currentArea; }
case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hwnd, message, wParam, lParam); }
return 0; }
int WINAPI WinMain(HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nCmdShow) { HWND hwnd; MSG messages; WNDCLASSEX wincl;
wincl.hInstance = hThisInstance; wincl.lpszClassName = szClassName; wincl.lpfnWndProc = WindowProcedure; wincl.style = CS_DBLCLKS; wincl.cbSize = sizeof(WNDCLASSEX);
wincl.hIcon = LoadIcon(NULL, IDI_APPLICATION); wincl.hIconSm = LoadIcon(NULL, IDI_APPLICATION); wincl.hCursor = LoadCursor(NULL, IDC_ARROW); wincl.lpszMenuName = NULL; wincl.cbClsExtra = 0; wincl.cbWndExtra = 0;
wincl.hbrBackground = (HBRUSH) COLOR_HIGHLIGHT;
if (!RegisterClassEx(&wincl)) { return 0; }
hwnd = CreateWindowEx(0, szClassName, "", WS_POPUP, CW_USEDEFAULT, CW_USEDEFAULT, 160, 100, HWND_DESKTOP, NULL, hThisInstance, NULL);
SetClassLong(hwnd, GCL_HBRBACKGROUND, (LONG)CreateSolidBrush(RGB(32,64,128))) ;
HRGN hRgn;
RECT rc;
GetWindowRect(hwnd, &rc);
OffsetRect(&rc, - rc.left, - rc.top); hRgn = CreateEllipticRgnIndirect(&rc);
SetWindowRgn(hwnd, hRgn, TRUE); ShowWindow(hwnd, nCmdShow);
while (GetMessage(&messages, NULL, 0, 0)) { TranslateMessage(&messages);
DispatchMessage(&messages); }
return messages.wParam; }
|
|