Tell me what you think I'm attempting to work on my C++ a little bit.

Code:
// -----By Resistance----

#define IDC_SQR	101
#define IDC_PLUSMIN	102
#define IDC_BACK	103
#define IDC_INVERT	104
#define IDC_PI	105
#define	DIALOG_NAME	106
#define	IDR_ICO_MAIN	2
#define	IDC_RESULT	1002
#define	IDC_PLUS	1003
#define	IDC_EQUAL	1004
#define	IDC_MINUS	1005
#define	IDC_BY	1006
#define	IDC_CLEAR	1007
#define	IDC_DIVISION	1008
#define	IDC_ONE	1010
#define	IDC_TWO	1011
#define	IDC_THREE	1012
#define	IDC_FOUR	1013
#define	IDC_FIVE	1014
#define	IDC_SIX	1015
#define	IDC_SEVEN	1016
#define	IDC_EIGHT	1017
#define	IDC_NINE	1018
#define	IDC_ZERO	1019
#define	IDC_POINT	1020
#define	IDM_MYMENU	1021
#define	IDM_ABOUT	6001
#define	DLG_ABOUT	6003
#define	IDA_MYACCEL	6005
//////////////////////Resource.rc //////
////
#include <windows.h>
#include "resource.h"
IDR_ICO_MAIN ICON "calc.ico" // Please Include an icon for your App
IDM_MYMENU MENU
BEGIN
POPUP "&Help"
BEGIN
MENUITEM "&About", IDM_ABOUT
END
END
DIALOG_NAME DIALOG 76, 6, 131, 133
STYLE DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU | 
WS_MINIMIZEBOX
CAPTION "Calculator Program"
MENU IDM_MYMENU
FONT 9, "Tahoma"


    {
    CONTROL "7", IDC_SEVEN, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 6, 46, 20, 16
    CONTROL "8", IDC_EIGHT, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 30, 46, 20, 16
    CONTROL "9", IDC_NINE, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 54, 46, 20, 16
    CONTROL "C", IDC_CLEAR, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 82, 24, 40, 16
    CONTROL "4", IDC_FOUR, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 6, 66, 20, 16
    CONTROL "5", IDC_FIVE, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 30, 66, 20, 16
    CONTROL "6", IDC_SIX, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 54, 66, 20, 16
    CONTROL "x", IDC_BY, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 78, 66, 20, 16
    CONTROL "1", IDC_ONE, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 6, 87, 20, 16
    CONTROL "2", IDC_TWO, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 30, 87, 20, 16
    CONTROL "3", IDC_THREE, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 54, 87, 20, 16
    CONTROL "+", IDC_PLUS, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 78, 109, 20, 16
    CONTROL "0", IDC_ZERO, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 6, 109, 20, 16
    CONTROL ".", IDC_POINT, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 54, 109, 20, 16
    CONTROL "/", IDC_DIVISION, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 78, 46, 20, 
    16
    CONTROL "-", IDC_MINUS, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 78, 87, 20, 16
    CONTROL "PI", IDC_PI, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 102, 66, 20, 16
    CONTROL "", IDC_RESULT, "EDIT", ES_RIGHT | ES_READONLY | WS_CHILD | WS_VISIBLE, 6, 8, 
    116, 12, WS_EX_CLIENTEDGE
    CONTROL "=", IDC_EQUAL, "button", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE, 
    102, 109, 20, 16
    CONTROL "SqR", IDC_SQR, "button", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE, 
    102, 46, 20, 16
    CONTROL "+/-", IDC_PLUSMIN, "button", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE, 
    30, 109, 20, 16
    CONTROL "Backspace", IDC_BACK, "button", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | 
    WS_VISIBLE, 38, 24, 40, 16
    CONTROL "1/x", IDC_INVERT, "button", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE, 
    102, 87, 20, 16
}

DLG_ABOUT DIALOG 6, 18, 196, 79
STYLE DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "About Calculator"
FONT 8, "MS Sans Serif"


    {
    CONTROL "OK", IDOK, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 75, 
    53, 45, 15
    CONTROL "Program made by You", -1, "STATIC", SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 
    53, 12, 104, 10
    CONTROL "Version 1.0", -1, "STATIC", SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 53, 25, 
    76, 10
    CONTROL "Copyright (c) All rights reserved", -1, "STATIC", SS_LEFT | WS_CHILD | 
    WS_VISIBLE | WS_GROUP, 53, 37, 119, 12
    CONTROL IDR_ICO_MAIN, IDR_ICO_MAIN, "STATIC", SS_ICON | WS_CHILD | WS_VISIBLE, 17, 20, 
    21, 20
}

IDA_MYACCEL ACCELERATORS
BEGIN
"C",IDC_CLEAR,ASCII
"c",IDC_CLEAR,ASCII
"0",IDC_ZERO,ASCII
"1",IDC_ONE,ASCII
"2",IDC_TWO,ASCII
"3",IDC_THREE,ASCII
"4",IDC_FOUR,ASCII
"5",IDC_FIVE,ASCII
"6",IDC_SIX,ASCII
"7",IDC_SEVEN,ASCII
"8",IDC_EIGHT,ASCII
"9",IDC_NINE,ASCII
"/",IDC_DIVISION,ASCII
"*",IDC_BY,ASCII
"-",IDC_MINUS,ASCII
"+",IDC_PLUS,ASCII
"=",IDC_EQUAL,ASCII
".",IDC_POINT,ASCII
112,IDM_ABOUT,VIRTKEY
13,IDC_EQUAL,VIRTKEY
END
/////////////////////Calculator.cpp ////
///
#define STRICT
//#define UNICODE
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <windowsx.h>
//#include <commctrl.h>
#include <tchar.h>
#include <cmath>
#include <cstdlib>
#include <cstdio>
#include "resource.h"
//#ifdef __BORLANDC__
// #pragma argsused
//#endif
using namespace std;
HBRUSH hredBrush;
HBRUSH g_hbrEdit;
HBRUSH g_hbrBackground;
bool CALLBACK AboutDlgProc( HWND, UINT, WPARAM, LPARAM );
bool CALLBACK InitProc( HWND hwndDlg, UINT Message, WPARAM wParam, LPARAM lParam );
HACCEL haccl;
static HINSTANCE ghInstance;
HWND hMainDlg;
HWND hwndResult;
char display[256] =


    {
    0
};

double Op1, Op2, Mem, Result;
int Operator;
bool bPointUsed;
void ClearDisplay( void );
void Dlg_OnPaint( HWND hwnd );
bool Dlg_OnInitDialog( HWND hwnd, HWND hwndFocus, LPARAM lParam );
HBRUSH Dlg_OnCtlColorStatic( HWND hwnd, HDC hdc, HWND hwndChild, int type );
HBRUSH Dlg_OnCtlColorBtn( HWND hwnd, HDC hdc, HWND hwndChild, int type );
HBRUSH Dlg_OnCtlColorDlg( HWND hwnd, HDC hdc, HWND hwndChild, int type );
void Dlg_OnCommand( HWND hwnd, int id, HWND hwndCtl, UINT codeNotify );
void Dlg_OnClose( HWND hwnd );
void Dlg_OnDestroy( HWND hwnd );
enum TOperator


    {
    Multiplicacion = 1, Division, Suma, Resta
};

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int 
nCmdShow )


    {
    //HWND hWnd;
    MSG Msg;
    ghInstance = hInstance;
    //Create a modeless dialog box
    hMainDlg = CreateDialog( hInstance, MAKEINTRESOURCE( DIALOG_NAME ), NULL, ( DLGPROC 
    )InitProc );
    if ( !hMainDlg )


        {
        MessageBox( NULL, TEXT( "CreateDialog failed" ), TEXT( "Info" ), MB_OK );
        return 0;
    }

    //hMainDlg = hWnd;
    haccl = LoadAccelerators( hInstance, MAKEINTRESOURCE( IDA_MYACCEL ) );
    if ( !haccl )
    MessageBox( NULL, TEXT( "LoadAccelators failed" ), TEXT( "Info" ), MB_OK );
    while ( GetMessage( & Msg, NULL, 0, 0 ) > 0 )


        {
        if ( !IsDialogMessage( hMainDlg, & Msg ) )


            {
            if ( TranslateAccelerator( hMainDlg, haccl, & Msg ) == 0 )


                {
                TranslateMessage( & Msg );
                DispatchMessage( & Msg );
            }

        }

    }

    return static_cast < int > ( Msg.wParam );
}

bool CALLBACK InitProc( HWND hwndDlg, UINT Message, WPARAM wParam, LPARAM lParam )


    {
    switch ( Message )


        {
        HANDLE_MSG( hwndDlg, WM_PAINT, Dlg_OnPaint );
        HANDLE_MSG( hwndDlg, WM_INITDIALOG, Dlg_OnInitDialog );
        HANDLE_MSG( hwndDlg, WM_CTLCOLORSTATIC, Dlg_OnCtlColorStatic );
        HANDLE_MSG( hwndDlg, WM_CTLCOLORBTN, Dlg_OnCtlColorBtn );
        HANDLE_MSG( hwndDlg, WM_CTLCOLORDLG, Dlg_OnCtlColorDlg );
        HANDLE_MSG( hwndDlg, WM_COMMAND, Dlg_OnCommand );
        HANDLE_MSG( hwndDlg, WM_CLOSE, Dlg_OnClose );
        HANDLE_MSG( hwndDlg, WM_DESTROY, Dlg_OnDestroy );
    }

    return FALSE;
}

void Dlg_OnCommand( HWND hwndDlg, int id, HWND hwndCtl, UINT codeNotify )


    {
    //char buffer[80]={0};
    switch ( id )


        {
        case IDM_ABOUT:
        DialogBox( ghInstance, MAKEINTRESOURCE( DLG_ABOUT ), hwndDlg, ( DLGPROC )AboutDlgProc 
        );
        break;
        case IDC_EQUAL:
        case 13: //Enter key
        case 0x3D: // equal key


            {
            switch ( operator )


                {
                case Multiplicacion: //Multiplication
                Op2 = atof( display );
                Result = Op1 * Op2;
                break;
                case Division: //Division
                Op2 = atof( display );
                if ( Op2 == 0.0 )


                    {
                    strcpy( display, "Cannot divide by zero" );
                    SendMessage( GetDlgItem( hwndDlg, IDC_RESULT ), WM_SETTEXT, 0, ( LPARAM )( 
                    LPCSTR )display );
                    strcpy( display, "" );
                    Op1 = Op2 = 0.0;
                    Mem = 0.0;
                    return;
                }

                Result = Op1 / Op2;
                break;
                case Suma: //Sum
                Op2 = atof( display );
                Result = Op1 + Op2;
                break;
                case Resta: //Resta
                Op2 = atof( display );
                Result = Op1 - Op2;
                break;
            }

            sprintf( display, "%.8f", Result );
            SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
            strcpy( display, "" );
            Mem = Result; //IPORTANT ASIGNMENT
            Op1 = Op2 = 0.0;
            bPointUsed = FALSE;
        }

        break;
        case IDC_SQR:
        if ( Mem != 0 )
        Op1 = Mem;
        else
        Op1 = atof( display );
        //	
        SendMessage(GetDlgItem(hMainDlg,IDC_RESULT),WM_GETTEXT,(WPARAM)79,(LPARAM)buffer);
        // Op1 = atof(buffer);
        Op2 = sqrt( Op1 );
        sprintf( display, "%.8f", Op2 );
        //SendMessage( hwndResult, WM_SETTEXT, 0
        //     , ( LPARAM )( LPCSTR )display );
        Edit_SetText( hwndResult, display );
        strcpy( display, "" );
        Mem = Op2;
        Op2 = Op1 = 0.0;
        bPointUsed = FALSE;
        break;
        case IDC_PLUSMIN:
        //	
        SendMessage(GetDlgItem(hMainDlg,IDC_RESULT),WM_GETTEXT,(WPARAM)79,(LPARAM)buffer);
        if ( Mem != 0 )
        Op1 = Mem;
        else
        Op1 = atof( display );
        if ( Op1 == 0.0 )


            {
            //MessageBox(NULL,"Op1 = 0.0","",MB_OK);
            //     
            return;
        }

        Op2 = -Op1;
        sprintf( display, "%.8f", Op2 );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = Op2;
        Op2 = Op1 = 0.0;
        bPointUsed = FALSE;
        break;
        //	case IDC_BACK:
        //break;
        case IDC_INVERT:
        if ( Mem != 0 )
        Op1 = Mem;
        else
        Op1 = atof( display );
        //	
        SendMessage(GetDlgItem(hMainDlg,IDC_RESULT),WM_GETTEXT,(WPARAM)79,(LPARAM)buffer);
        if ( Op1 == 0.0 )


            {
            //	MessageBox(NULL,"Op1 = 0.0","",MB_OK)
            //     ;
            return;
        }

        Op2 = 1 / Op1;
        sprintf( display, "%.8f", Op2 );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        strcpy( display, "" );
        Mem = Op2;
        Op1 = Op2 = 0.0;
        bPointUsed = FALSE;
        break;
        case IDC_PI:
        strcpy( display, "" );
        strcat( display, "3.14159265" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 3.141592;
        bPointUsed = FALSE;
        break;
        case IDC_MINUS:
        case 0x96:
        operator = Resta;
        if ( Mem != 0 )
        Op1 = Mem;
        else
        Op1 = atof( display );
        strcpy( display, "" );
        bPointUsed = FALSE;
        break;
        case IDC_BY:
        case 0x2A:
        operator = Multiplicacion;
        if ( Mem != 0 )
        Op1 = Mem;
        else
        Op1 = atof( display );
        strcpy( display, "" );
        bPointUsed = FALSE;
        break;
        case IDC_DIVISION:
        case 0x2F:
        operator = Division;
        if ( Mem != 0 )
        Op1 = Mem;
        else
        Op1 = atof( display );
        strcpy( display, "" );
        bPointUsed = FALSE;
        break;
        case IDC_PLUS:
        case 0x2B:


            {
            operator = Suma;
            if ( Mem != 0 )
            Op1 = Mem;
            else
            Op1 = atof( display );
            bPointUsed = FALSE;
            strcpy( display, "" );
        }

        break;
        case IDC_CLEAR:
        Mem = 0.0;
        Op1 = Op2 = 0.0;
        ClearDisplay();
        bPointUsed = FALSE;
        break;
        case IDC_ONE:
        case 0x31:
        strcat( display, "1" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_TWO:
        case 0x32:
        strcat( display, "2" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_THREE:
        case 0x33:
        strcat( display, "3" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_FOUR:
        case 0x34:
        strcat( display, "4" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_FIVE:
        case 0x35:
        strcat( display, "5" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_SIX:
        case 0x36:
        strcat( display, "6" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_SEVEN:
        case 0x37:
        strcat( display, "7" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_EIGHT:
        case 0x38:
        strcat( display, "8" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_NINE:
        case 0x39:
        strcat( display, "9" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_ZERO:
        case 0x30:
        strcat( display, "0" );
        SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
        Mem = 0.0;
        break;
        case IDC_POINT:
        case 0x2E:
        if ( !bPointUsed )


            {
            strcat( display, "." );
            SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR )display );
            Mem = 0.0;
            bPointUsed = TRUE;
        }

        break;
    }

}

void Dlg_OnPaint( HWND hwndDlg )


    {
    PAINTSTRUCT ps;
    RECT rc;
    HDC hdc = BeginPaint( hwndDlg, & ps );
    SelectObject( hdc, hredBrush );
    SelectObject( hdc, GetStockObject( NULL_PEN ) );
    GetClientRect( hwndDlg, & rc );
    Ellipse( hdc, -rc.right / 4, -rc.right / 4, rc.right, rc.right );
    EndPaint( hwndDlg, & ps );
}

void Dlg_OnDestroy( HWND hwnd )


    {
    DeleteObject( hredBrush );
    DeleteObject( g_hbrEdit );
    DeleteObject( g_hbrBackground );
    PostQuitMessage( 0 );
}

void Dlg_OnClose( HWND hwnd )


    {
    DestroyWindow( hwnd );
}

bool Dlg_OnInitDialog( HWND hwndDlg, HWND hwndFocus, LPARAM lParam )


    {
    Op1 = 0.0;
    Op2 = 0.0;
    Mem = 0.0;
    operator = 0;
    Result = 0.0;
    ZeroMemory( display, sizeof( display ) );
    bPointUsed = FALSE;
    hwndResult = GetDlgItem( hwndDlg, IDC_RESULT );
    hredBrush = CreateSolidBrush( RGB( 255, 0, 0 ) );
    g_hbrBackground = CreateSolidBrush( RGB( 0, 0, 255 ) ); //Backgroung of dialog
    g_hbrEdit = CreateSolidBrush( RGB( 0, 0, 0 ) ); //Backgroung of edit control
    SendMessage( hwndDlg, WM_SETICON, ICON_SMALL, ( LPARAM )LoadIcon( ghInstance, 
    MAKEINTRESOURCE( IDR_ICO_MAIN ) ) );
    SendMessage( hwndDlg, WM_SETICON, ICON_BIG, ( LPARAM )LoadIcon( ghInstance, 
    MAKEINTRESOURCE( IDR_ICO_MAIN ) ) );
    return TRUE;
}

HBRUSH Dlg_OnCtlColorDlg( HWND hwnd, HDC hdc, HWND hwndChild, int type )


    {
    return ( HBRUSH )g_hbrBackground;
}

HBRUSH Dlg_OnCtlColorBtn( HWND hwndDlg, HDC hdc, HWND hwndChild, int type )


    {
    // 	HDC hdcButtom = (HDC)wParam;
    SetBkMode( hdc, TRANSPARENT );
    return ( HBRUSH )GetStockObject( NULL_BRUSH );
}

HBRUSH Dlg_OnCtlColorStatic( HWND hwnd, HDC hdc, HWND hwndChild, int type )


    {
    // HDC hdcStatic = (HDC)wParam;
    SetTextColor( hdc, RGB( 255, 255, 0 ) );
    // SetBkMode(hdcStatic, TRANSPARENT); //
    //     ==SetBkColor()
    SetBkColor( hdc, RGB( 0, 0, 0 ) );
    return ( HBRUSH )g_hbrEdit;
}

bool CALLBACK AboutDlgProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam )


    {
    switch ( uMsg )


        {
        case WM_INITDIALOG:
        /* * Nothing special to initialize. */
        return TRUE;
        case WM_COMMAND:
        switch ( LOWORD( wParam ) )


            {
            case IDOK:
            case IDCANCEL:
            /* * OK or Cancel was clicked, close the dialog. */
            EndDialog( hDlg, true );
            return TRUE;
        }

        break;
    }

    return FALSE;
}

void ClearDisplay( void )

    {
    strcpy( display, "" );
    SendMessage( hwndResult, WM_SETTEXT, 0, ( LPARAM )( LPCSTR ) "" );
}