Как добавить окно в ConsoleApplication Project C ++ - PullRequest
0 голосов
/ 14 марта 2019

Привет, я хочу добавить Window (Gui) к моему ConsoleApplication в C ++ Как это сделать ?? Мне нужно что-то под названием Hwnd? Я пытался использовать его, и он не работает для меня

В основном я хочу создать MessageBox, который будет каждый раз где-нибудь на экране ... но я понял, что вы должны делать это с HWND.

Мне нужен учебник Как создавать окна с помощью hwnd

Я пытаюсь:

HWND GetWindow(HWND hWnd, UINT uCmd);

Ответы [ 2 ]

0 голосов
/ 15 марта 2019

Проверьте, соответствует ли следующий код вашему требованию:

#include <windows.h>

int main()
{
    MessageBox(nullptr, TEXT("Hello World!"), TEXT("Message"), MB_TOPMOST);
}

Это понравится:

enter image description here

0 голосов
/ 14 марта 2019

Вы использовали несколько тегов, у меня есть решение winapi, а не winforms.

Вы можете использовать стандартное.MessageBox, вызывая функцию, но они не могут быть «превращены» в ваши пользовательские окна по любой разумной «цене», поэтому они могут только уведомлять пользователя и задавать простые вопросы «да / нет».Для «настоящих» окон давайте забудем MessageBox.

Самым простым пользовательским окном является стандартный.Диалог окон.Он использует предопределенный класс окна # 32770, поэтому вам не нужно регистрировать свой класс окна, создавать цикл сообщений и т. Д. Самый простой способ открыть его - функция DialogBoxParam.Вы должны сделать сценарий диалога .rc (есть много визуальных редакторов), скомпилировать его с помощью компилятора ресурсов, создать ссылку на ваш .exe и передать его имя в качестве параметра для DialogBoxParam.

Вот примерокно внутри консольного приложения (только часть C ++), использующее этот вызов DialogBoxParam

DialogBoxParam(GetModuleHandle(NULL),"EXAMPLE",NULL,ExampleWindowFunction,NULL);

Это здесь: https://pastebin.com/Crkdy5FB

Оно также содержит рисование изображения (оно, вероятно, пока не требуется)это осталось от другого примера winapi).Используйте его как «песочницу», вы, вероятно, быстро поймете, как он работает и какую роль играет здесь hWnd.

Я понимаю ваши проблемы.Графический интерфейс стал слишком сложным, поэтому трудно понять, что именно вы не понимаете.Это мешает задать хороший вопрос.

...