Как добавить еще один графический интерфейс в проект MFC в C ++ - PullRequest
1 голос
/ 09 января 2011

привет У меня есть проект MFC с графическим интерфейсом, и я хочу добавить еще один класс графического интерфейса в проект. Я добавил класс нового графического интерфейса в проект и создал новый класс для него, но я не знаю, как его запустить. Когда я запускаю свою программу, у меня запускается первый графический интерфейс, и я хочу, чтобы одним нажатием кнопки появился новый графический интерфейс. и вот что я не знаю, как сделать. спасибо

Ответы [ 2 ]

0 голосов
/ 17 сентября 2013

Требуются некоторые детали. Какой у тебя 2й графический интерфейс? это производное от класса Dialog или это CWnd производное окно? Я предполагаю, что это должно быть CWnd-производное окно, потому что если бы это был диалог, вы могли бы отобразить его, просто вызвав DoModal или Create функции.

Итак, для класса окна, производного от CWnd, вы должны сделать публичную функцию и в этой функции сделать следующее:

  1. Сделать публичную функцию, например, " MyWindowMajic () "
  2. Внутри MyWindowMajic () зарегистрируйте свой класс для нового окна с помощью AfxRegisterWndClass () и сохраните возвращенное имя класса.
  3. Вызвать функцию CreateEx () с соответствующими параметрами и передать ей имя класса, полученное на шаге 2. Например: CreateEx (WS_EX_APPWINDOW, pszClassName , ...)
  4. вызовите ShowWindow (SW_SHOW) , чтобы сделать его видимым. Это завершит функцию MyWindowMajic ()
  5. В методе нажатия кнопки создайте экземпляр своего класса и вызовите его MyWindowMajic ()
0 голосов
/ 09 января 2011

При первом запуске графического интерфейса обработайте событие onbncicked кнопки, и в этой функции вы получите объект нового графического интерфейса, и для этого объекта вызовите функцию DoModal.Это сделает ваш второй графический интерфейс загруженным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...