Welcome to Dream.In.Code
Become a C++ Expert!

Join 149,915 C++ Programmers for FREE! Get instant access to thousands of C++ experts, tutorials, code snippets, and more! There are 2,149 people online right now. Registration is fast and FREE... Join Now!




creating a basic window in c++

 
Reply to this topicStart new topic

creating a basic window in c++

tootypegs
19 Jan, 2008 - 03:24 PM
Post #1

D.I.C Head
**

Joined: 9 Oct, 2007
Posts: 177


My Contributions
hi, im usinf the free borland command line compiler and i want to create a simple window in c++. Ive used the code snippet from this website but im getting an error returned "unresolved external main refernced"

is there an easy way just to create a basic c++ window?

User is offlineProfile CardPM
+Quote Post

Amadeus
RE: Creating A Basic Window In C++
19 Jan, 2008 - 05:19 PM
Post #2

g++ -o drink whiskey.cpp
Group Icon

Joined: 12 Jul, 2002
Posts: 12,351



Thanked: 51 times
Dream Kudos: 25
My Contributions
Can you post the code please?
User is offlineProfile CardPM
+Quote Post

tootypegs
RE: Creating A Basic Window In C++
20 Jan, 2008 - 03:22 AM
Post #3

D.I.C Head
**

Joined: 9 Oct, 2007
Posts: 177


My Contributions
i took the code saved it in a basic cpp file and ran it, i must be doing something stupid worng?


CODE


#include <windows.h>


// Step 4: the Window Procedure
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
     switch(msg)
     {
     case WM_CREATE:

          break;
          case WM_CLOSE:
               DestroyWindow(hwnd);
          break;
          case WM_DESTROY:
               PostQuitMessage(0);
          break;
          default:
               return DefWindowProc(hwnd, msg, wParam, lParam);
     }
     return 0;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
                         LPSTR lpCmdLine, int nCmdShow)
{
     WNDCLASSEX wc;
     HWND hwnd;
     MSG Msg;
     static char appName[] = "Your Application";

     //Step 1: Registering the Window Class
     wc.cbSize           = sizeof(WNDCLASSEX);
     wc.style           = CS_HREDRAW | CS_VREDRAW;
     wc.lpfnWndProc      = WndProc;
     wc.cbClsExtra      = 0;
     wc.cbWndExtra      = 0;
     wc.hInstance      = hInstance;
     wc.hIcon           = LoadIcon(NULL, IDI_APPLICATION);
     wc.hCursor           = LoadCursor(NULL, IDC_ARROW);
     wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
     wc.lpszMenuName  = NULL;
     wc.lpszClassName = appName;
     wc.hIconSm           = LoadIcon(NULL, IDI_APPLICATION);

     if(!RegisterClassEx(&wc))
     {
          MessageBox(NULL, "Window Registration Failed!", "Error!",
               MB_ICONERROR | MB_OK);
          return 0;
     }

     // Step 2: Creating the Window
     hwnd = CreateWindowEx(
          WS_EX_CLIENTEDGE,
          appName,
          "Your Window Title",
          WS_OVERLAPPEDWINDOW,
          CW_USEDEFAULT, CW_USEDEFAULT, 400, 400,
          NULL, NULL, hInstance, NULL);

     if(hwnd == NULL)
     {
          MessageBox(NULL, "Window Creation Failed!", "Error",
               MB_ICONERROR | MB_OK);
          return 0;
     }

     ShowWindow(hwnd, nCmdShow);
     UpdateWindow(hwnd);

     // Step 3: The Message Loop
     while(GetMessage(&Msg, NULL, 0, 0) > 0)
     {
          TranslateMessage(&Msg);
          DispatchMessage(&Msg);
     }
     return int(Msg.wParam);
}


User is offlineProfile CardPM
+Quote Post

Reply to this topicStart new topic
Time is now: 1/8/09 02:17PM

Be Social

Dream.In.Code RSS Feed Dream.In.Code LinkedIn Group Follow Us On Twitter

Live C++ Help!

C++ Tutorials

Reference Sheets

C++ Snippets

DIC Chatroom

Bye Bye Ads

Monthly Drawing

Thumb Drive

Top Contributors

Top 10 Kudos This Month