//---------------------------------------------------------------------------
#include <windows.h>
#include <commctrl>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
#define AppName "Moogle"
#define IDC_INIT 1000
#define BTN1 100
#define BTN2 101
#define CST SWP_NOZORDER | SWP_NOSIZE
HWND btn1, btn2, lbl;
HWND eit1;
int i = 0;
void Init(HWND hwnd) {
SendMessage(eit1, WM_SETTEXT, 0, (long)"");}
void Show(HWND hwnd){
char Text[] = {0};
SendMessage(eit1, WM_GETTEXT, 1024, (long)Text);
HWND win = FindWindow(0, Text);
if(!win) return;
ShowWindow(win, SW_SHOW);
}
void Hide(HWND hwnd){
char Text[] = {0};
SendMessage(eit1, WM_GETTEXT, 1024, (long)Text);
HWND win = FindWindow(0, Text);
if(!win) return;
ShowWindow(win, SW_HIDE);
}
long __stdcall WndProc(HWND hwnd, UINT mes, WPARAM wParam, LPARAM lParam)
{
switch(mes)
{
case WM_CREATE: break;
case WM_DESTROY: PostQuitMessage(wParam);
case WM_COMMAND: switch(wParam){
case IDC_INIT: Init(hwnd);break;
case BTN1: Show(hwnd);break;
case BTN2: Hide(hwnd);break;
}break;
default: return DefWindowProc(hwnd, mes, wParam, lParam);
}
return 0;
}
WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
HWND hwnd;
MSG msg;
WNDCLASS cls;
memset(&cls, 0, sizeof(cls));
cls.style = CS_HREDRAW | CS_VREDRAW;
#define Style WS_SYSMENU | DS_3DLOOK | WS_MINIMIZEBOX
#define CTL WS_CHILD
#define LBL CTL
#define BTN CTL | BS_PUSHBUTTON
#define EDT CTL | WS_BORDER | ES_AUTOHSCROLL
cls.cbWndExtra = 2;
cls.hInstance = hInstance;
cls.hIcon = LoadIcon(hInstance, "MAINICON");
cls.hCursor = LoadCursor(0, IDC_ARROW);
cls.hbrBackground = (HBRUSH)(COLOR_BTNFACE + 1);
cls.lpszMenuName = 0;
cls.lpszClassName = AppName;
cls.lpfnWndProc = WndProc;
if(!RegisterClass(&cls)) return 1;
InitCommonControls();
hwnd = CreateWindowEx(0, AppName, AppName, cls.style | Style,
100, 100, 430, 75, 0, 0, hInstance, 0);
if(!hwnd) return 1;
ShowWindow(hwnd, nCmdShow);
lbl=CreateWindowEx(0, "STATIC", "Welches Fenster?", LBL, 0, 15, 200, 20, hwnd,
0, hInstance, 0);
ShowWindow(lbl, SW_SHOW);
btn1 = CreateWindowEx(0, "BUTTON", "Zeigen", BTN, 230, 7, 90, 30, hwnd,
(void*)BTN1, hInstance, 0);
ShowWindow(btn1, SW_SHOW);
eit1 = CreateWindowEx(0, "EDIT", "", EDT, 125, 12, 100, 20, hwnd, 0, hInstance, 0);
ShowWindow(eit1, SW_SHOW);
btn2 = CreateWindowEx(0, "BUTTON", "Verstecken", BTN, 330, 7, 90, 30, hwnd,
(void*)BTN2, hInstance, 0);
ShowWindow(btn2, SW_SHOW);
UpdateWindow(hwnd);
SendMessage(hwnd, WM_COMMAND, IDC_INIT, 0);
while(GetMessage(&msg, 0, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
//---------------------------------------------------------------------------