2016-08-22 1 views
-5

Теперь я хочу динамически модифицировать GUI запущенной программы WINDOWS (предположим, что эта программа написана в win32 API/MFC), например, добавить кнопку в ее конкретную позицию ,Как добавить кнопку к запущенной программе Windows GUI

Но я не знаком с программированием GUI WINDOWS.

Так что я хочу спросить, есть ли какой-либо нормальный способ реализовать эту функцию с помощью API win32 или MFC.

Если нет, нужны ли какие-либо хакерские подсказки?

+1

[Научитесь программы для Windows, в C++] (https://msdn.microsoft.com/en-us/library/windows/desktop/ff381399.aspx). – IInspectable

+0

спасибо .. это полезно .. – Zeta

ответ

0

Вы можете dynamically создать любой компонент Windows, используя функцию CreateWindow при обработке (например) на WM_COMMAND сообщений внутри вашей функции обратного вызова WndProc. Или любое другое сообщение в этом отношении. При условии, что у вас есть кнопка с идентификатором IDC_BUTTON, вы можете создать новую кнопку при нажатии.

case WM_COMMAND: // process commands 
     switch (LOWORD(wParam)) 
     { 
     case IDC_BUTTON: //check for our button ID 
      HWND hwndButton = CreateWindow(
       L"BUTTON", // predefined class name 
       L"OK", // button text 
       WS_TABSTOP | WS_VISIBLE | WS_CHILD | BS_DEFPUSHBUTTON, // Styles 
       10, // x position 
       10, // y position 
       75, // width 
       24, // height 
       hWnd, // parent handle 
       (HMENU)IDC_BUTTON2, // button ID 
       hInst, // module instance 
       NULL); // lparam, pointer not needed 
      break; 
     } 
+0

большое спасибо !!! Я узнаю больше, прежде чем задавать вопросы ... – Zeta