Visual Studio 2013 и выше: как сделать приложение Windows Forms?
Ну да, такого "мастера приложений с одной главной формой", как в версии 2010, нет. Но это не значит, что работа с формами не поддерживается - просто создавайте пустой проект CLR и добавляйте форму в него "вручную". Вот весь процесс, расписанный по шагам:
Меню Создать проект, Visual C++, CLR, Пустой проект CLR.
После создания проекта нажать на вкладку Проект, Добавить новый элемент, UI, форма Windows Form. Потом добавить следующий код в файл MyForm.cpp
:
#include "MyForm.h" //Здесь пишем имя h-файла вашей формы! using namespace Example1; //Здесь пишем имя вашего проекта! [STAThreadAttribute] int main(array<System::String ^> ^args) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); Application::Run(gcnew MyForm()); //Тоже пишем имя своей формы, если оно не MyForm return 0; }
Далее нажимаем вкладку Проект, Свойства имя_текущего_проекта.
Выбираем Свойства конфигурации, Компоновщик, Система, справа в поле Подсистема вставляем Windows (строку /SUBSYSTEM:WINDOWS
).
Затем Свойства конфигурации, Компоновщик, Дополнительно, справа поле Точка входа, вставляем строку main
Приведённый вариант кода MyForm.cpp
- не единственный, в новых версиях Studio лучше делать так:
#include "MyForm.h" using namespace System; using namespace System::Windows::Forms; [STAThread] int main(array<String^>^ arg) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); Project1::MyForm form; //Вместо Project1 - имя вашего проекта Application::Run(%form); return 0; }
Это всё, можно работать.
Для экспорта шаблона делаем следующее: из меню "Файл" выбираем пункт "Экспорт шаблона". В появившимся мастере шаблонов соглашаемся со всем, только проверяем, чтобы стояла галочка на "Автоматический импорт шаблонов в Visual Studio". Жмем Готово. Теперь в мастере проектов появился новый пункт.
P.S. Проверил в Visual Studio 2015, подход также сработал. Увы, экспорт шаблона в некоторых сборках версий Studio 2015 и 2017 может работать криво, не добавляя в шаблон файлы .cpp и .h!
P.P.S. В Visual Studio 2019 действия те же, но если после установки Visual Studio 2019 отсутствует конструктор формы Windows Forms, читаем и ставим это.
Если устанавливается актуальная сборка версии Enterprice (16.5.X и старше), установить рабочую нагрузку «Разработка классических приложений» и из раздела «Дополнительные компоненты» отметить «Поддержка C++/CLI» (C++/CLI Support)
Цитируем официальную доку:
"В Visual Studio 2017 и более поздних версиях поддержка C++/CLI является необязательным компонентом. Чтобы установить его, откройте Visual Studio Installer из меню "Пуск" Windows. Убедитесь, что установлен флажок Разработка классических приложений на C++, и в разделе Дополнительные компоненты также следует проверить поддержку C++/CLI.
"Individual Components" (Индивидуальные компоненты) - "Поддержка C++/CLI" ("C++/CLI support")"
Возможно, без обновления версии поможет вот это дополнение.
В версии Studio 2019 примерно со сборки 16.5 (см. меню Справка - О программе) отдельно "доставлять" конструктор форм не нужно, создаваемый тип проекта называется "Пустой проект CLR (.NET Framework)", а сохранить шаблон можно из меню Проект - Экспорт шаблона. В принципе, для работы с C++ и Windows Forms нужны только следующие нагрузки:
Рабочие нагрузки VS 2019 CPP
09.02.2015, 14:54 [17667 просмотров]