C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[25011] Re:정말 심각하군요.
김백일.cedar [cedar] 946 읽음    2003-04-01 15:02
김용진 님이 쓰신 글 :
: //Hello.cpp
: //
: //마우스 왼쪽 버튼을 테스트하는 프로그램이다.
:
: #include<windows.h>//왼도우즈 프로그램을 작성하는데 필요한 구조체

"오른도즈"도 아니고 "왼도우즈"라... ^^; 정확한 표기는 "윈도우즈", "윈도즈"겠지요.

:                    //각종 API 함수, 메크로, 메시지등이 선언된 헤다 화일로
:                    //왼도우즈 프로그램에 반드시 포함되어야 한다.
: HINSTANCE g_hInst; //인스턴스 핸들을 저장하기 위한 전역변수
:                    //왼도우 프로시저 선언
: LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
:                    //왼도우 프로시져에 대한 선언
:                    //WINMAIN() : 왼도우즈 어플리케이션의 진입점
:                    //여기서 프로그램이 시작된다.
:                    //콘솔기반 c 프로그램의 MAIN(0에 해당한다.
: INT APIENTRY WinMain(HINSTANCE hInstance,
:                      HINSTANCE hPrevInstance,
:                      LPTSTR lpCmdLine,
:                      int nCmdshow)
: {
:   static char szClassname[] = "Hello";//왼도우 클래스 이름
:   static char szTitle[]="안녕하세요!";//타이틀바에 출력될 문자열
:
:   MSG msg;           //메시지 구조체
:   HWND hWnd;         //왼도우 핸들
:   WNDCLASSEX wc;     //왼도우 클래스 구조체
:   g_hInst=hInstance; //인스턴스 핸들 저장
:        ////////////////// 왼도우 클래스 구조체에 값을 지정한다.
:    /////////////////////
:   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) GetStockObject(WHITE_BRUSH);
:   wc.lpszMenuName    =NULL;
:   wc.lpszClassName   =szClassname;
:   wc.hIconSm         =LoadIcon(NULL,IDI_APPLICATION);
: ///////////////////////////////
:   RegisterClassEx(&wc);//
: ////////////////////////
:
:  hWnd = CreateWindow(
:             szClassname,
:             szTitle,
:             WS_OVERLAPPEDWINDOW,
:             CW_USEDEFAULT,
:             CW_USEDEFAULT,
:             CW_USEDEFAULT,
:             CW_USEDEFAULT,
:             NULL,
:             NULL,
:             hInstance,
:             NULL
:          );
:
:     if(!hWnd)
:       return(FALSE);
:
:    /////////////////////
:
:      ShowWindow(hWnd,nCmdshow);
:      UpdateWindow(hWnd);
:
:     //////////////
:
:    while(GetMessage (&msg, NULL, 0, 0))
:    {
:       TranslateMessage(&msg);
:       DispatchMessage(&msg);
:      }
:
:       return msg.wParam;
:    }
:
:
:   //////////////////////////////
:   ////////////////////////////
:
:    LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg,
:                    WPARAM wParam, LPARAM lparam)
:    {
:      //
:      //
:
:     switch(uMsg)
:    {
:        case WM_LBUTTONDOWN:
:            MessageBox(hWnd,"마우스 좌측 버튼을 눌렀습니다.","마우스 테스트",  MB_OK);
:     break;
:    case WM_DESTROY:   //
:    PostQuitMessage(0);
:    break;
:
    default: // ;를 :로 고치세요.
:      return DefWindowProc(hWnd,uMsg,wParam,lparam);
:
:     }
       return 0; // 리턴값이 있어야 합니다.
:
:     }
:
:
: ============================================================================]
: 위 내용대로 컴파일 했는데 에라가 나오네요...
: 음 어디가 이상이 있는지 알켜주세요....ㅠㅠ
: 초보라...그래요..

솔직히 말해서, 님 말대로 심각하군요.
이 정도도 못 고치실 정도라면 윈도우 프로그래밍은 무리입니다.
콘솔 프로그래밍의 기초부터 배우시길 권합니다.

+ -

관련 글 리스트
25007 질문요..심각한 초보자임.. 김용진 909 2003/04/01
25017     [답변] 간단한 구문 에러...... 정성훈.해미 918 2003/04/01
25020         Re:[질문] 한가지만 더요... 김용진 833 2003/04/01
25024             [답변] APIENTRY 사용에 대하여... 정성훈.해미 1080 2003/04/02
25025                 Re:[답변] APIENTRY 사용에 대하여... 김백일.cedar 1227 2003/04/02
25012     Re:질문요..심각한 초보자임.. guesty 825 2003/04/01
25011     Re:정말 심각하군요. 김백일.cedar 946 2003/04/01
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.