2013-04-06 3 views
5

Существует, как начинается моя программа:Что делать, если WS_MAXIMIZE работает?

int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nShowCmd) 
    { 
     MapEditor mapEditor; 

     mapEditor.Run(); 

     return 0; 
    } 

и есть MapEditor():

MapEditor::MapEditor() 
{ 
    /* Creates the window */ 
    WNDCLASSEX wClass; 
    ZeroMemory(&wClass,sizeof(WNDCLASSEX)); 
    wClass.cbSize=sizeof(WNDCLASSEX); 
    wClass.style=CS_HREDRAW|CS_VREDRAW; 
    wClass.lpfnWndProc=WinProc; 
    wClass.cbClsExtra=NULL; 
    wClass.cbWndExtra=NULL; 
    wClass.hInstance=GetModuleHandle(0); 
    wClass.hIcon=NULL; 
    wClass.hCursor=LoadCursor(NULL,IDC_ARROW); 
    wClass.hbrBackground=(HBRUSH)COLOR_WINDOW; 
    wClass.lpszMenuName=NULL; 
    wClass.lpszClassName="Map Editor"; 
    wClass.hIconSm=NULL; 

    if(!RegisterClassEx(&wClass)) 
    { 
     int nResult=GetLastError(); 

     MessageBox(NULL,"Failed to register window class","Window Class Failed",MB_ICONERROR); 
    } 

    ME_HWnd=CreateWindowEx(NULL, 
      "Map Editor", 
      "Map Editor", 
      WS_OVERLAPPEDWINDOW | WS_MAXIMIZE | WS_VISIBLE, 
      CW_USEDEFAULT, 
      CW_USEDEFAULT, 
      CW_USEDEFAULT, 
      CW_USEDEFAULT, 
      NULL, 
      NULL, 
      GetModuleHandle(0), 
      this); 

    if(!ME_HWnd) 
    { 
     int nResult=GetLastError(); 

     MessageBox(NULL,"Window class creation failed","Window Class Failed",MB_ICONERROR); 
    } 
    ShowWindow(ME_HWnd, WS_MAXIMIZE); 
} 

окно не будет когда-либо начнут максимальна. Зачем?

«Похоже, что ваш пост - это в основном код, пожалуйста, добавьте еще несколько деталей». «Похоже, что ваш пост - это в основном код, пожалуйста, добавьте еще несколько деталей». Готово!

+0

Был ли это последний абзац, который жалуется? Я не знал, что это так: p – chris

+0

Да ... Я нахожу много таких жалоб и жалоб! –

+0

@chris, есть много автоматических тестов, которые применяются для попытки установить нижнюю границу качества вопроса. В этом случае я считаю, что это контрпродуктивно. –

ответ

5

Вы передаете неправильный второй параметр в ShowWindow. Второй параметр должен быть значением SW_..., а не значением WS_..., как описано в the documentation.

+0

Вау! Спасибо. Что еще более шокирует, так это то, что я обнаружил, что многие люди сообщали о той же проблеме, не получая решения. –

+0

@ MickaelBergeronNéron Когда все остальное не удается, прочитайте документацию. (Документация вполне понятна по этому вопросу. Удивленный вам никогда не приходило на проверку.) –

+0

Я проверил его. Я просто не заметил обмена в письмах. –

Смежные вопросы