戻り値について...

[戻る]
game 2007/01/06(土) 12:35:28
while()の部分の、return msg.wParamは、MSG構造体の第三引数ですか?

return msg.wParamの値は何を意味していて、どこへ渡されるんでしょうか?

教えてください。





#include<windows.h>
#define A TEXT("sample_MainWindow")


LRESULT  CALLBACK WindowProc(
    HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
    {
        switch(uMsg){
        case WM_DESTROY:
            PostQuitMessage(0);
            return 0;
        }
        return DefWindowProc(hWnd,uMsg ,wParam ,lParam);
}


int WINAPI WinMain(
    HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    PSTR  lpCmdLine,
    int  nCmdShow
    ){
    
    HWND hWnd;
    WNDCLASS wc;
    MSG msg;
    
    wc.style         =CS_HREDRAW | CS_VREDRAW;
    wc.lpfnWndProc   =WindowProc;
    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_BACKGROUND+1;
    wc.lpszMenuName  =NULL;
    wc.lpszClassName =A;
    

    if(!RegisterClass(&wc)){
    MessageBox(NULL,TEXT("ウインドウクラス登録失敗"),
              NULL,MB_OK); 
    return 0;
    }
    

    hWnd=CreateWindow(
        A,TEXT("window title"),
        WS_OVERLAPPEDWINDOW | WS_VISIBLE,
        100,100 ,400,300,
        NULL,NULL,hInstance,NULL
    );
    

    if(hWnd==NULL){
        MessageBox(NULL,TEXT("ウインドウ生成失敗"),
            NULL,MB_OK);
    return 0;
    }
    

    while(GetMessage(&msg,NULL ,0,0)>0)  {
    DispatchMessage(&msg);
    }
    return msg.wParam;
    }

超初心者 2007/01/06(土) 12:58:15
> MSG構造体の第三引数ですか?

構造体に第三引数なんてないでしょ。

> 何を意味していて、どこへ渡されるんでしょうか?

検索すればGetMessageやWinMainの戻り値の説明ぐらい見つかるでしょ。
最終的にはプロセスの終了コードになるよ。

game 2007/01/07(日) 17:25:28
どうも、お答えありがとうございました。
すごいヒントになりました!
ありがとうございます!

game 2007/01/07(日) 17:27:53
[[解決]]
なんどもすいません。
解決です!

古いスレッドには追加発言できません。