2016-09-29 2 views
-2

Как создать новое окно на кнопку click, в win32 sdk? .. Я пробовал писать CreateWindow api в случае с IDC_ buttonclick, но это не сработало.Создание нового окна в существующем окне

Вот мой код:

case WM_COMMAND: 

    switch(LOWORD(wParam)) 
    { 
     case IDC_BUTTONCLICK: 
      if (BN_CLICKED==HIWORD(wParam)) 
      { 
       GetWindowText(hwndEdit, data,255); 
       //MessageBox(hwnd,data,"Hello",MB_OK); 
      } 
     //wsprintf(str,"%s",Patients_List[1].FirstName); 
     //MessageBox(hwnd, str, "First Name", MB_OK); 
     for(a = 0; a < 2; a++) 
     { 
      if(!strcmp(Patients_List[a].FirstName,data)) 
      { 
       wsprintf(str,"%s", Patients_List[a].ContactNum); 
       MessageBox(hwnd, str, "Contact Number", MB_OK); 
       //MessageBox(hwnd, "Contact Num", "Contact Number", MB_OK); 
       hwndInfoWindow = CreateWindow(WS_EX_TOPMOST, "MiniProject", WS_OVERLAPPEDWINDOW|WS_POPUP, CW_USEDEFAULT, CW_USEDEFAULT, 500, 500, hwnd, NULL, NULL, NULL); 
       ShowWindow(hwndInfoWindow,SW_SHOW); 
      } 
     } 
    } 
    break; 
+0

программирование конфессиональных не будет вам очень далеко. Во всяком случае, как создать окно было объяснено буквально сотнями тысяч учебников и книг. Получите Petzold [Программирование Windows®, пятое издание] (https://www.amazon.com/dp/157231995X), если вы хотите прекратить угадывание и начать знать. (Проголосовал за то, чтобы закрыть как бесполезный, проголосовавший из-за отсутствия исследований.) – IInspectable

+0

Я уже создал главное окно. Я хочу создать другое нормальное окно, когда пользователь нажимает кнопку «отправить». У меня уже был тщательный поиск в Google. Однако я поеду с вашим предложением и прочитаю Программу Карла Петцольда «Окно» –

+0

Программирование на основе веры. Вызов функций, но не проверка возвращаемых значений для ошибок. Вы должны научиться проверять наличие ошибок. В противном случае все, что вы можете сделать, это догадываться. Узнайте, как отлаживать. –

ответ

0

WS_EX_TOPMOST не могут быть переданы в CreateWindow(), вы должны передать его CreateWindowEx() вместо.

И вы не передаете значение для параметра lpWindowName.

Попробуйте это:

hwndInfoWindow = CreateWindowEx(WS_EX_TOPMOST, "MiniProject", "", WS_OVERLAPPEDWINDOW|WS_POPUP, CW_USEDEFAULT, CW_USEDEFAULT, 500, 500, hwnd, NULL, NULL, NULL); 
Смежные вопросы