Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _WIN32_WINNT 0x0600
- #define _WIN32_IE 0x0900
- #include <windows.h>
- #include <commctrl.h>
- #include <Tchar.h>
- #define IDC_BUTTON_1 101
- #define IDC_EDIT_1 201
- #define IDC_EDIT_2 202
- #define IDC_STATIC_1 301
- #define IDC_STATIC_2 302
- #define IDC_COMBO_BOX_1 401
- const char g_ClassName[] = "WindowClass1";
- HIMAGELIST g_himl;
- LRESULT CALLBACK MainWindowProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) {
- switch(Message) {
- case WM_CTLCOLORSTATIC: {
- DWORD CtrlID = GetDlgCtrlID((HWND)lParam);
- if (CtrlID = IDC_STATIC_1) {
- HDC hdcStatic = (HDC) wParam;
- SetBkMode(hdcStatic, TRANSPARENT);
- SetBkColor(hdcStatic, RGB(230,230,230));
- }
- }
- break;
- case WM_COMMAND: {
- switch(LOWORD(wParam)) {
- case IDC_BUTTON_1: {
- int TextLen1 = GetWindowTextLength(GetDlgItem(hwnd, IDC_EDIT_1));
- int TextLen2 = GetWindowTextLength(GetDlgItem(hwnd, IDC_EDIT_2));
- if(TextLen1 > 0) {
- char* buf;
- buf = (char*)GlobalAlloc(GPTR, TextLen1 + 1);
- GetDlgItemText(hwnd, IDC_EDIT_1, buf, TextLen1 + 1);
- if(TextLen2 > 0) {
- char* buf2;
- buf2 = (char*)GlobalAlloc(GPTR, TextLen2 + 1);
- GetDlgItemText(hwnd, IDC_EDIT_2, buf2, TextLen2 + 1);
- MessageBox(hwnd, buf, buf2, MB_OK | MB_ICONINFORMATION);
- GlobalFree((HANDLE)buf2);
- } else {
- MessageBox(hwnd, "Not enough information!", "ERROR", MB_OK | MB_ICONWARNING);
- }
- GlobalFree((HANDLE)buf);
- } else {
- MessageBox(hwnd, "Not enough information!", "ERROR", MB_OK | MB_ICONWARNING);
- }
- }
- }
- }
- break;
- case WM_CREATE: {
- HWND Combo1 = CreateWindowEx(
- NULL, WC_COMBOBOXEX, NULL,
- WS_BORDER | WS_VISIBLE | WS_CHILD | CBS_DROPDOWN,
- 0, 0, 0, 100,
- hwnd, (HMENU)IDC_COMBO_BOX_1,
- GetModuleHandle(NULL), NULL);
- //Combo Box Items START
- COMBOBOXEXITEM cbei;
- int iCnt;
- typedef struct {
- int iImage;
- int iSelectedImage;
- int iIndent;
- LPTSTR pszText;
- } ITEMINFO, *PITEMINFO;
- ITEMINFO IInf[] = {
- {0, 3, 0, _T("first")},
- {1, 4, 1, _T("second")},
- {2, 5, 2, _T("third")},
- {0, 3, 0, _T("fourth")},
- {1, 4, 1, _T("fifth")},
- {2, 5, 2, _T("sixth")},
- {0, 3, 0, _T("seventh")},
- {1, 4, 1, _T("eighth")},
- {2, 5, 2, _T("ninth")},
- {0, 3, 0, _T("tenth")},
- {1, 4, 1, _T("eleventh")},
- {2, 5, 2, _T("twelfth")},
- {0, 3, 0, _T("thirteenth")},
- {1, 4, 1, _T("fourteenth")},
- {2, 5, 2, _T("fifteenth")},
- };
- cbei.mask = CBEIF_TEXT | CBEIF_INDENT | CBEIF_IMAGE | CBEIF_SELECTEDIMAGE;
- for(iCnt = 0; iCnt < 15; iCnt++) {
- cbei.iItem = iCnt;
- cbei.pszText = IInf[iCnt].pszText;
- cbei.cchTextMax = sizeof(IInf[iCnt].pszText);
- cbei.iImage = IInf[iCnt].iImage;
- cbei.iSelectedImage = IInf[iCnt].iSelectedImage;
- cbei.iIndent = IInf[iCnt].iIndent;
- if(SendMessage(Combo1, CBEM_INSERTITEM, 0, (LPARAM)&cbei) == -1) {
- return FALSE;
- }
- }
- SendMessage(Combo1, CBEM_SETIMAGELIST, 0, (LPARAM)g_himl);
- SetWindowPos(Combo1, NULL, 20, 20, 250, 120, SWP_NOACTIVATE);
- //Combo Box Items END
- HWND Button1 = CreateWindowEx(
- NULL,
- "BUTTON",
- "Create Message Box",
- WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON | BS_TEXT,
- 10, 275, 360, 25,
- hwnd,
- (HMENU)IDC_BUTTON_1,
- GetModuleHandle(NULL),
- NULL);
- if (Button1 == NULL) {
- MessageBox(NULL, "Failed to create button1!", "ERROR!", MB_OK | MB_ICONWARNING);
- return -1;
- }
- HWND Edit1 = CreateWindowEx(
- WS_EX_CLIENTEDGE,
- "EDIT",
- "",
- WS_VISIBLE | WS_BORDER | WS_CHILD | ES_MULTILINE,
- 100, 110, 270, 150,
- hwnd,
- (HMENU)IDC_EDIT_1,
- GetModuleHandle(NULL),
- NULL);
- if (Edit1 == NULL) {
- MessageBox(NULL, "Failed to create edit1!", "ERROR!", MB_OK | MB_ICONWARNING);
- return -1;
- }
- HWND Edit2 = CreateWindowEx(
- WS_EX_CLIENTEDGE,
- "EDIT",
- "",
- WS_VISIBLE | WS_BORDER | WS_CHILD,
- 100, 70, 270, 30,
- hwnd,
- (HMENU)IDC_EDIT_2,
- GetModuleHandle(NULL),
- NULL);
- if (Edit2 == NULL) {
- MessageBox(NULL, "Failed to create edit2!", "ERROR!", MB_OK | MB_ICONWARNING);
- return -1;
- }
- HWND Static1 = CreateWindowEx(
- NULL,
- "STATIC",
- "Title:",
- WS_VISIBLE | WS_CHILD | SS_CENTER,
- 0, 75, 100, 20,
- hwnd,
- (HMENU)IDC_STATIC_1,
- GetModuleHandle(NULL),
- NULL);
- if (Static1 == NULL) {
- MessageBox(NULL, "Failed to create static1!", "ERROR!", MB_OK | MB_ICONWARNING);
- return -1;
- }
- HWND Static2 = CreateWindowEx(
- NULL,
- "STATIC",
- "Message:",
- WS_VISIBLE | WS_CHILD | SS_CENTER,
- 0, 115, 100, 20,
- hwnd,
- (HMENU)IDC_STATIC_2,
- GetModuleHandle(NULL),
- NULL);
- if (Static2 == NULL) {
- MessageBox(NULL, "Failed to create static2!", "ERROR!", MB_OK | MB_ICONWARNING);
- return -1;
- }
- }
- break;
- case WM_CLOSE:
- DestroyWindow(hwnd);
- ImageList_Destroy(g_himl);
- break;
- case WM_DESTROY:
- PostQuitMessage(0);
- break;
- default:
- DefWindowProc(hwnd, Message, wParam, lParam);
- }
- }
- int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
- INITCOMMONCONTROLSEX icex;
- icex.dwSize = sizeof(INITCOMMONCONTROLSEX);
- icex.dwICC = ICC_STANDARD_CLASSES;
- InitCommonControlsEx(&icex);
- g_himl = ImageList_Create(
- 20, 20, NULL, 3, 5);
- ImageList_AddIcon(g_himl, LoadIcon(GetModuleHandle(NULL), IDI_ASTERISK));
- ImageList_AddIcon(g_himl, LoadIcon(GetModuleHandle(NULL), IDI_ERROR));
- ImageList_AddIcon(g_himl, LoadIcon(GetModuleHandle(NULL), IDI_EXCLAMATION));
- WNDCLASSEX wnd1;
- HWND MainWin;
- MSG Msg;
- wnd1.cbSize = sizeof(WNDCLASSEX);
- wnd1.style = 0;
- wnd1.lpfnWndProc = MainWindowProc;
- wnd1.cbClsExtra = 0;
- wnd1.cbWndExtra = 0;
- wnd1.hInstance = hInstance;
- wnd1.hIcon = LoadIcon(NULL, IDI_WINLOGO);
- wnd1.hCursor = LoadCursor(NULL, IDC_ARROW);
- wnd1.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
- wnd1.lpszMenuName = NULL;
- wnd1.lpszClassName = g_ClassName;
- wnd1.hIconSm = LoadIcon(NULL, IDI_WINLOGO);
- if(!RegisterClassEx(&wnd1)) {
- MessageBox(NULL, "Failed to register wnd1 class!", "ERROR!", MB_OK | MB_ICONWARNING);
- return -1;
- }
- MainWin = CreateWindowEx(
- WS_EX_CLIENTEDGE,
- g_ClassName,
- "Message Box Creator",
- WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME,
- CW_USEDEFAULT, CW_USEDEFAULT, 400, 350,
- NULL, NULL, hInstance, NULL);
- if (MainWin == NULL) {
- MessageBox(NULL, "Failed to create window handle!", "ERROR!", MB_OK | MB_ICONWARNING);
- return -1;
- }
- ShowWindow(MainWin, nCmdShow);
- UpdateWindow(MainWin);
- while(GetMessage(&Msg, NULL, 0, 0) > 0) {
- TranslateMessage(&Msg);
- DispatchMessage(&Msg);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement