Dialog-Based Application Example

/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//

IDD_DIALOG1 DIALOG DISCARDABLE 0, 0, 186, 90
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "DIalog App"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "Copy Text",COPY,7,55,50,14
LTEXT "Enter Text Below",IDC_STATIC,7,7,96,13
EDITTEXT EditBox,7,23,128,23,ES_AUTOHSCROLL
END


/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
#include <windows.h>
#include "resource.h"


BOOL CALLBACK DlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
TCHAR textvalue[30] = TEXT("");
switch(msg)
{

case WM_INITDIALOG:
//place initialisation code here
return TRUE;
case WM_COMMAND:

switch(LOWORD(wParam))
{
case IDOK: case IDCANCEL:
EndDialog(hwnd, 0);
return TRUE;

case COPY:
{

HWND hTextControl = GetDlgItem(hwnd, EditBox);
GetWindowText(hTextControl, textvalue, 10);
SetWindowText(hwnd, textvalue);
}
break;
// return FALSE;
case WM_CLOSE:

EndDialog(hwnd, 0);

return TRUE;
}

}
return FALSE;
}

int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR lpCmdLine, int nShowCmd)
{
DialogBox(hInst,MAKEINTRESOURCE(IDD_DIALOG1), NULL, DlgProc);
return 0;
}