2012-01-19 10 views
0

あなたのインターネットブラウザのようなものを作りたいと思います。それはリストの一番下にFileとExitを持つでしょう。だから私はそれがプログラムを終了する場所のようにしたい。ここに(とのDev C++や他のプログラムと同様に、[Iは、Webブラウザをプログラミングしておりません])Dev C++ HMENU(ファイル>終了)

OK]をクリックして助けてください私のコードです:

#define ID_Exit 1 

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) 
{ 
    switch (message)   
    { 
     case WM_CREATE:{ 

      HMENU hMenubar = CreateMenu(); 
      HMENU hFile = CreateMenu(); 

      AppendMenu(hMenubar, MF_POPUP, (UINT_PTR)hFile, "File"); 

      AppendMenu(hFile, MF_STRING, ID_Exit, "Exit"); 

      SetMenu(hwnd, hMenubar); 

      break; 
    } 


    case WM_COMMAND:{ 

     if (LOWORD(wParam) == ID_Exit){         

     void exit (int status); 

     } 

     break; 
     } 

答えて

1

あなたは、メインウィンドウを破壊するために、Windowsの機能DestroyWindowを使用する必要があります:

if (LOWORD(wParam) == ID_Exit) { 
    DestroyWindow(hwnd); 
    break; 
} 
+0

両方の回答が私の仕事になりますありがとうございました – Smarty57

+0

その仕事と終了(0)作品 – Smarty57

0

Win32アプリケーションのための適切な射出シーケンスここに記述されている(スニペットのいずれかのライブラリ呼び出しの欠如から、私はあなたが無地のWin32で何をすべきかを推測):Using Windows - Destroying a Windowが。

exitを呼び出すと、すぐにアプリケーションが強制終了され、ウィンドウが閉じられたときにクリーンアップや保存などの処理が行われない可能性があります。

+0

impute – Smarty57

関連する問題