Windows forms application visual studio 2013

Ну да, такого "мастера приложений с одной главной формой", как в версии 2010, нет. Но это не значит, что работа с формами не поддерживается - просто создавайте пустой проект CLR и добавляйте форму в него "вручную". Вот весь процесс, расписанный по шагам:

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

Рабочие нагрузки VS 2019 CPP

09.02.2015, 14:54 [16530 просмотров]


К этой статье пока нет комментариев, Ваш будет первым

February 24 2016, 12:20

Category:

  • IT
  • Cancel

http://mvblog.ru/archives/861

Сегодня я хочу рассказать о том, как создать проект Windows Forms на C++ в IDE Visual Studio 2013. Дело в том, что, начиная с VS 2012, в списке проектов, которые можно создать, убрали пункт Приложение Windows Forms. Я сейчас говорю о том, который на C++, создать такой проект на C# можно, выбрав соответствующий пункт в разделе создаваемых проектов. Однако тот факт, что такой проект нельзя выбрать из списка, не говорит о том, что его нельзя создать самому. Именно об этом я и хочу рассказать в этой статье.

Первое, что потребуется сделать — запустить Visual Studio. Как только VS запустили, нажимаем последовательно Файл → Создать → Проект
Создание проекта

После этого в открывшемся окне будет предложено выбрать тип проекта. Нам необходимо выбрать в разделе Visual C++ подраздел CLR и выбрать пункт Пустой проект CLR.
Безымянный

Когда проект будет создан, в обозревателе решений кликаем правой кнопкой мыши по созданному проекту. В открывшемся контекстном меню последовательно выбираем Добавить → Создать элемент и в открывшемся меню в разделе UI выбираем Форма Windows FormsСоздание проекта Создание проекта

Когда форма будет добавлена, в обозревателе решений выбираем файл MyForm.cpp. Перед вами откроется новая вкладка с единственной строчкой кода:

#include "MyForm.h"

В этот файл нам необходимо добавить следующий код:

using namespace System;
using namespace System::Windows::Forms;

[STAThreadAttribute]
void Main(array<String^>^ args) {
 Application::EnableVisualStyles();
 Application::SetCompatibleTextRenderingDefault(false);
 Project1::MyForm form;
 Application::Run(%form);
}

Код к форме

После этого в свойствах проекта. Выбираем подраздел Система раздела Компоновщик и в строке Подсистема из выпадающего меню выбираем Windows (/SUBSYSTEM:WINDOWS) и нажимаем Применить.Создание проекта

СистемаНе закрывая окно свойств проекта, переходим в подраздел Дополнительно и в строке Точка входа пишемMain и после этого нажимаем клавишу ОК. Создание проектаНа этом настройки проекта заканчиваются. Для редактирования внешнего вида формы, необходимо перейти во вкладку MyForm.h [Конструктор], кликнув дважды по файлу MyForm.h в обозревателе решений.

Начиная с Visual Studio 2012, в Microsoft Visual C++ отсутствует возможность непосредственного создания проектов Windows Forms. Это доставляет немало неудобств разработчикам.

Однако сама возможность использования этой технологии не исключена и поэтому проект, для приложения Windows Forms, можно создать вручную.

Для этого необходимо вначале создать пустой проект CLR и настроить его параметры.

В свойствах проекта необходимо выбрать ветку «Компоновщик» – «Система» и в строке «Подсистема» выбрать Windows, как это показано на скриншоте ниже.

После этого в ветке «Дополнительно» в строке «Точка входа» следует указать названии функции, которая будет являться точкой входа в программу.

На этом настройка проекта завершена.

Теперь необходимо создать главное окно программы и описать в нём точку входа.

Для этого в контекстном меню обозревателя решения Visual Studio выберем «Добавить» – « Создать элемент» и в открывшемся окне в ветке UI выберем Форма Windows Forms.

После добавления формы в проекте появятся файлы с её исходным кодом. Файл залоговка (в данном примере MyForm.h) и файл исходного кода (в данном примере, MyForm.cpp), в котором и следует описать точку входа в программу.

Точка входа программу представляет собой простую функцию, состоящую всего из 4х строк кода.

Вначале подключаем необходимые для работы модули.

using namespace System;

using namespace System::Windows::Forms;

Указываем атрибут потока STAThread, в котором будет выполняться функция, которая является точкой входа. Атрибут означает, что стартовый поток будет работать в Single Threaded COM-Apartment. Это нужно для объектов Windows Forms, которые работают в этом потоке.

После этого уже можно приступать непосредственно к описанию точки в хода (функция main).

Вначале включаем визуальные стили с помощью метода EnableVisualStyles() ,и, используя метод SetCompatibleTextRenderingDefault,задаём технологию визуализации графического интерфейса.

Далее запускаем приложение с созданной формой в качестве главного окна.

Проект1::MyForm Form;

Application::Run(%Form);

В итоге файл исходного кода с функцией main выглядит следующим образом.

#include «MyForm.h»

using namespace System;

using namespace System::Windows::Forms;

[STAThread]

void main(array^ args)

{

    Application::EnableVisualStyles();

    Application::SetCompatibleTextRenderingDefault(false);

    Проект1::MyForm Form;

    Application::Run(%Form);

}

С помощью этого нехитрого способа можно разрабатывать приложения с использованием Windows Forms на C++ в Visual Studio 2012 и 2013.

Бесспорно, данный подход гораздо менее удобен по сравнению с непосредственным созданием проекта Windows Forms, которое было доступно вплоть до Visual Studio 2010 включительно. Но, к сожалению, новые версии пока не могут предложить разработчикам ничего другого. Остаётся надеяться, что в будущих версиях этот недостаток всё же будет устранён.

cplusplus_icon.png

Bookmark and Share


bogotobogo.com site search:


Application using visual studio

In this section, we will build UI application using Windows Form provided by Visual Studio 2013.

In Project Setup stage for deploy, VS 2012 will be used. Express versions will work except the project setup for deployment.

The app is a very simple random number generator with two buttons (Generator/Reset), 7 Labels for the display of the random numbers with a PictureBox.

For WPF (Windows Presentation Foundation), please visit WPF & XAML.

1494.strip.gif

Source: Dilbert

The simplest UI program

  1. Select Visual C++ CLR and CLR Empty Project
    and type in RandomNumberGenerator for the project name. The, OK.
  2. Project->Add New Item… .
    Select UI under Visual C++.
    Leave the Form name as given by default MyForm.h.
    Then, click Add.

    MyForm.png

  3. We need to edit the MyForm.cpp file:
    #include "MyForm.h"
    
    using namespace System;
    using namespace System::Windows::Forms;
    
    
    [STAThread]
    void Main(array<String^>^ args)
    {
    	Application::EnableVisualStyles();
    	Application::SetCompatibleTextRenderingDefault(false);
    
    	RandomNumberGenerator::MyForm form;
    	Application::Run(%form);
    }
      

    The System namespace provides functions to work with UI controls.

  4. At the right-mouse click on RandomNumberGenerator, we get the Properties window.
    Configuration Properties->Linker->System
    Select Windows (/SUBSYSTEM:WINDOWS) for SubSystem.
    Advanced->Entry Point, type in Main.
    The, hit OK.
  5. Hit F5, then we will have to run result, the Form.

UI Setup

  1. Locate the ToolBox, and then expand the list of Common Controls.
    Double-click its Label items to add it to our Form.
    Do this seven times.
    We need to add two Buttons and a PixtureBox.
    Double-click those as well from the list.
  2. Resize and rearrange the items. Rename the buttons and tile of the Form, then it should look like this:

    MyFormWithLabelsAndButtons.png

  3. We can put the picture onto the PictureBox.
    At a right mouse click, we get Choosing Picture….
    Then, select the image file we want to use.
  4. Let’s try if it works.
    Run it (Hit F5).

    FormWithPictureRun.png

Event handling code for UI components

  1. Let’s look at the file MyForm.h.
    #pragma once
    
    namespace RandomNumberGenerator {
    
    	using namespace System;
    	using namespace System::ComponentModel;
    	using namespace System::Collections;
    	using namespace System::Windows::Forms;
    	using namespace System::Data;
    	using namespace System::Drawing;
    
    	/// 
    	/// Summary for MyForm
    	/// 
    	public ref class MyForm : public System::Windows::Forms::Form
    	{
    	public:
    		MyForm(void)
    		{
    			InitializeComponent();
    			//
    			//TODO: Add the constructor code here
    			//
    		}
            ...
    
      

    It begins with a pragma once directive.
    To VS compiler, it means only open this file once during the compilation.
    Also, as explained it before, the System namespace gives us functions to deal with UI controls.
    The line public ref class MyForm : public System::Windows::Forms::Form defines a derived class named MyForm. The members of the class are the interface components.

  2. To get a skeleton code for events, select the Generate button (button1), then type in button1_Click into for the Click under Action of the Properties window.
    Then, VS will add additional code to MyForm.h for us:

    void InitializeComponent(void)
    {
       this->button1->Click += gcnew System::EventHandler(this, &MyForm;::button1_Click);
       ...
    
    #pragma endregion
       private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) { } 			 
      

    Do the same for the Reset button (button2).

  3. Inside the bracket of Reset (button2), insert the following code to set the values to 0 when we click the button:
     // Reset button
     private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
            // clear label fields
    	this->label1->Text = "0";
    	this->label2->Text = "0";
    	this->label3->Text = "0";
    	this->label4->Text = "0";
    	this->label5->Text = "0";
    	this->label6->Text = "0";
    	this->label7->Text = "0";
     
            // set button state
    	this->button1->Enabled = true;
    	this->button2->Enabled = false;
    }
       

    Also, the fields should be set to 0 when we load the form. So, click the Label1, then set the Text to 0 under Properties window. Repeat the same to the reset of the labels. Note that we disabled the Reset button, and enabled the Generate button at the click.

Generate Random numbers

  1. When the Generate is clicked, random numbers should be generated and displayed. We will put the code into the event handling function,
    private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e).

    // Generate button
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
    
    	int num[7] = { 0 };
    
    	// seed
    	srand((int) time(0));
    
    	// Randomize the array values.
    	for (int i = 0; i < 7; i++) 
    		num[i] = (rand() % 99) + 1;
    
    	// set the label text with random number
    	this->label1->Text = Convert::ToString(num[0]);
    	this->label2->Text = Convert::ToString(num[1]);
    	this->label3->Text = Convert::ToString(num[2]);
    	this->label4->Text = Convert::ToString(num[3]);
    	this->label5->Text = Convert::ToString(num[4]);
    	this->label6->Text = Convert::ToString(num[5]);
    	this->label7->Text = Convert::ToString(num[6]);
    
    	// change the button states.
    	this->button1->Enabled = false;
    	this->button2->Enabled = true;
    }
    

    For more info on the random number, please visit Random Numbers in C++.

  2. Press F5 to run it again.

    Random_InitA.png

    Random_InitB.png

Deploy

  1. Launch the Configuration Manager…, and select Release from Active solution configuration.

    ConfigurationManager.png

  2. We’ve done the following steps for the Debug version. Now, let’s do it for Release version.
    At the right-mouse click on RandomNumberGenerator, we get the Properties window.
    Configuration Properties->Linker->System
    Select Windows (/SUBSYSTEM:WINDOWS) for SubSystem.
    Advanced->Entry Point, type in Main.
    The, hit OK.
  3. To deploy the application, a Setup Project should be added to the solution to create the required files for installation.
  4. File->New. Launch a New Project dialog.
  5. From the New Project dialog, choose Other Project Types->Setup and Deployment.
    We need to enter a name for the Setup Project.

    DeployNewProject.png

    Click OK to add the project files to the Solution. Then we see the SetupProject in the Solution Explorer.

    SolutionExplorerAfterSetupProject.png

  6. From the Project Assistant window, we setup the properties of installation.

    ProjectAssistant_Add_Folders.png

    For example, the picture shows adding a Release folder to the install.

  7. After setup the install, we build the Setup Project. In this case, we do right click on the SetupRandomApp in the Solution Explorer
  8. Then, locate the setup.exe file and run. In this case, it’s in
    C:UsersKHyuckDocumentsVisual Studio 2012
    ProjectsRandomSetupRandomAppSetupRandomAppExpressSingleImageDiskImagesDISK1

    InstallShieldWizard.png

  9. Go to the install directory, run the RandomNumberGenerator.exe. In this example,
    It’s installed in C:Program Files (x86)BogotobogoMy Product NameRelease directory.

Source Files

Source files used in the example is Random.zip.

  • Remove From My Forums
  • Question

  • In VS C++ 2010, the template is easy to find: New Project -> Visual C++ -> CLR -> Windows Forms Application.
    In VS C++ 2013 RC, New Project -> Visual C++ -> CLR doesn’t have Windows Forms Application template.
    The following link doesn’t help because it’s for C#, only.
    http://msdn.microsoft.com/en-us/library/vstudio/dd492132(v=vs.120).aspx
    Is this a bug (or a design flaw) in VS 2013 Release Candidate?
    Since this is only an «RC», it’s a «candidate» for release, and maybe the final release will correct this defect?
    Is there a way to manually create a Windows Forms Application?

Answers

  • Turns out these were removed/hidden starting with VS 2012. The underlying implementation files were still present (which is what I initially checked), but have since been removed for VS 2013 RC/RTM.

    According to the VC++ team, the primary intent of C++/CLI was to provide for great interop solutions, and not another full-featured .NET language. So if you’re looking to build a new .NET based desktop apps, C# or VB.NET are the recommended choices
    going forward.

    You can still develop/build C++/CLI Winform projects, but given that C++/CLI will never be as fully featured as C# and VB in this space, they opted to pull these from the new project dialog, as a way of steering customers to the
    recommended choices. 

    Sincerely,


    Ed Dore

    • Proposed as answer by

      Thursday, September 12, 2013 10:37 PM

    • Marked as answer by
      May Wang — MSFT
      Thursday, September 19, 2013 1:42 AM

Сегодня я хочу рассказать о том, как создать проект Windows Forms на C++ в IDE Visual Studio 2013. Дело в том, что, начиная с VS 2012, в списке проектов, которые можно создать, убрали пункт Приложение Windows Forms. Я сейчас говорю о том, который на C++, создать такой проект на C# можно, выбрав соответствующий пункт в разделе создаваемых проектов. Однако тот факт, что такой проект нельзя выбрать из списка, не говорит о том, что его нельзя создать самому. Именно об этом я и хочу рассказать в этой статье.

Когда проект будет создан, в обозревателе решений кликаем правой кнопкой мыши по созданному проекту. В открывшемся контекстном меню последовательно выбираем Добавить > Создать элемент и в открывшемся меню в разделе UI выбираем Форма Windows FormsСоздаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows) Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)

Когда форма будет добавлена, в обозревателе решений выбираем файл MyForm.cpp. Перед вами откроется новая вкладка с единственной строчкой кода:

В этот файл нам необходимо добавить следующий код:

Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)

Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)Не закрывая окно свойств проекта, переходим в подраздел Дополнительно и в строке Точка входа пишем Main и после этого нажимаем клавишу ОК. Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)На этом настройки проекта заканчиваются. Для редактирования внешнего вида формы, необходимо перейти во вкладку MyForm.h [Конструктор], кликнув дважды по файлу MyForm.h в обозревателе решений.

Содержание

  1. 11 отзывов на “ Создаем проект Windows Forms в Visual Studio на C++ ”
  2. Создаем проект Windows Forms в Visual Studio на C++
  3. 11 отзывов на “ Создаем проект Windows Forms в Visual Studio на C++ ”

11 отзывов на “ Создаем проект Windows Forms в Visual Studio на C++ ”

Спасибо, все очень понятно, у меня получилось. zxcqwe890 (C, Visual Studio, Windows)

Но это будет приложение CLR, то есть скомпилируется в CIL код. Это не полноценный. После компиляции это ничем не будет отличаться от С#, будет тот же самый CIL код.

Все сделал как написано. VS 2015. Выдает ошибку:
Данные, необходимые для завершения этой операции еще не доступны. (Exception
from HRESULT: 0x8000000A)

Аналогично, пока решение проблемы не нашел

Переоткрыть этот .h lexalex (C, Visual Studio, Windows)

Такая же проблема

Спасибо большое за сатью. VS 2015 по интерфейсу чуть другая (добавить элемент находится во вкладке «Project» ), но остальное все сработало.

Одно но, в этом случаи приложуха скомпилируется в CIL, как при С#, а не в бинарный вид.

А что, если вкладки UI нету?

Спасибо. Как раз думал сделать приложение с формой, но обязательно на плюсах. Хороший гайд

Создаем проект Windows Forms в Visual Studio на C++

Сегодня я хочу рассказать о том, как создать проект Windows Forms на C++ в IDE Visual Studio 2013. Дело в том, что, начиная с VS 2012, в списке проектов, которые можно создать, убрали пункт Приложение Windows Forms. Я сейчас говорю о том, который на C++, создать такой проект на C# можно, выбрав соответствующий пункт в разделе создаваемых проектов. Однако тот факт, что такой проект нельзя выбрать из списка, не говорит о том, что его нельзя создать самому. Именно об этом я и хочу рассказать в этой статье.

Когда проект будет создан, в обозревателе решений кликаем правой кнопкой мыши по созданному проекту. В открывшемся контекстном меню последовательно выбираем Добавить > Создать элемент и в открывшемся меню в разделе UI выбираем Форма Windows FormsСоздаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows) Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)

Когда форма будет добавлена, в обозревателе решений выбираем файл MyForm.cpp. Перед вами откроется новая вкладка с единственной строчкой кода:

В этот файл нам необходимо добавить следующий код:

Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)

Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)Не закрывая окно свойств проекта, переходим в подраздел Дополнительно и в строке Точка входа пишем Main и после этого нажимаем клавишу ОК. Создаем проект Windows Forms в Visual Studio на C++ (C, Visual Studio, Windows)На этом настройки проекта заканчиваются. Для редактирования внешнего вида формы, необходимо перейти во вкладку MyForm.h [Конструктор], кликнув дважды по файлу MyForm.h в обозревателе решений.

11 отзывов на “ Создаем проект Windows Forms в Visual Studio на C++ ”

Спасибо, все очень понятно, у меня получилось. zxcqwe890 (C, Visual Studio, Windows)

Но это будет приложение CLR, то есть скомпилируется в CIL код. Это не полноценный. После компиляции это ничем не будет отличаться от С#, будет тот же самый CIL код.

Все сделал как написано. VS 2015. Выдает ошибку:
Данные, необходимые для завершения этой операции еще не доступны. (Exception
from HRESULT: 0x8000000A)

Аналогично, пока решение проблемы не нашел

Переоткрыть этот .h lexalex (C, Visual Studio, Windows)

Такая же проблема

Спасибо большое за сатью. VS 2015 по интерфейсу чуть другая (добавить элемент находится во вкладке «Project» ), но остальное все сработало.

Одно но, в этом случаи приложуха скомпилируется в CIL, как при С#, а не в бинарный вид.

А что, если вкладки UI нету?

Спасибо. Как раз думал сделать приложение с формой, но обязательно на плюсах. Хороший гайд

Seems likely that I am not able to create a windows form application using the Microsoft Visual Studio Express 2013 under Windows 8. The default templaters are only for creating apps rather than traditional normal windowed applications.

Is there any way I could find the template or find a solution?

Thanks.

asked Oct 19, 2013 at 13:20

Thanos Paravantis's user avatar

1

Actually yes, you can do that manually, by adding the references to the project (System.Windows.Forms) and changing the output type in the properties of the project, and adding classes — you have to manually do the whole thing..

Gonzalo.-'s user avatar

Gonzalo.-

12.4k5 gold badges48 silver badges80 bronze badges

answered Dec 24, 2014 at 20:40

RobDev's user avatar

RobDevRobDev

451 silver badge9 bronze badges

To Expand RobDev’s answer, you can actually do this. I will show you an example of how to do this in Visual Studio Express 2015 for Web, probably same applies for 2013 version.

Steps.:

  • Create an empty solution

Empty solution

  • Create a .dll library project

Create .dll project

  • Change output in project properties to Windows Application. To do so, right click on the new added project and pick «Properties». There, you can change «Output Type» dropdown in Application tab.

changing output

  • Add a reference to System.Windows.Forms to your project (by right-clicking => Add Reference to your Reference option under your project)

reference added

  • Set the project to Startup Project, by right-clicking the project and choosing «Set up as Startup Project»

enter image description here

  • add a main method to the generated class (you can rename it to Main). It will need this code to start.

    using System.Windows.Forms;
    
    namespace ClassLibrary1
    {
        public class Class1
        {
            public static void Main()
            {
                Application.Run(new Form());
            }
        }
    }
    

and voila! That will create a new fresh Form. You could use a starting point whatever form you want. To do so, add a new .cs class and make it inherit from Form class.

The toolbox to customize forms is available at View => Toolbox menu.

answered Apr 22, 2017 at 19:56

Gonzalo.-'s user avatar

Gonzalo.-Gonzalo.-

12.4k5 gold badges48 silver badges80 bronze badges

12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

1

19.11.2013, 14:53. Показов 75252. Ответов 44


Windows Form есть для С# но нет для C++ или это как то по другому делается?

Миниатюры

Как создать проект Windows Forms в Visual Studio 2013?
 

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



2062 / 618 / 41

Регистрация: 23.10.2011

Сообщений: 4,468

Записей в блоге: 2

19.11.2013, 15:09

2

http://msdn.microsoft.com/ru-r… s.90).aspx

Добавлено через 4 минуты

Цитата
Сообщение от Fanera
Посмотреть сообщение

WinAPI — вещь хорошая но пока для меня сложная и чтобы написать что то совсем просто е с 2 кнопками не хотелось бы пока вникать.

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



0



29 / 30 / 3

Регистрация: 26.07.2010

Сообщений: 297

19.11.2013, 15:12

3

Цитата
Сообщение от Fanera
Посмотреть сообщение

WinAPI — вещь хорошая но пока для меня сложная и чтобы написать что то совсем просто е с 2 кнопками не хотелось бы пока вникать..

Qt?



0



12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

19.11.2013, 15:18

 [ТС]

4

Цитата
Сообщение от programina
Посмотреть сообщение

http://msdn.microsoft.com/ru-ru/libr…(v=vs.90).aspx

За ссылку конечно спасибо но это по VS 2008 и некоторые вещи не применимы к VS2013 как например отсутствие в пустом проекте int WINAPI WinMain, получается что нечего не получается и нужно опять изучать не известно что.

Добавлено через 3 минуты

Цитата
Сообщение от dev.nikor
Посмотреть сообщение

Qt?

Может быть но просто начал с книги по VS 2010 Б.Похомова. на сайте Microsoft, из Expreess лежить толкьо 2013 пока читал про консольные все получалось. Дошел до Форм и все…. или 2010 ставить искать или другую книгу или Qt или как говорится хз.



1



Don’t worry, be happy

17781 / 10545 / 2035

Регистрация: 27.09.2012

Сообщений: 26,514

Записей в блоге: 1

19.11.2013, 16:39

5

Цитата
Сообщение от Fanera
Посмотреть сообщение

Дошел до Форм и все….

а скорее всего книга то не по C++



1



12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

19.11.2013, 17:19

 [ТС]

6

Цитата
Сообщение от Croessmah
Посмотреть сообщение

а скорее всего книга то не по C++

Вы тут все такие умные, ну просто девать некуда.
прям с пеленок все знали…
Очень надеялся что этот форум и особенно эта рублика создана не для насмешек.
А складывается ощущение что ее создали для самоутверждения более опытные «товарищи»



0



_

317 / 151 / 27

Регистрация: 08.10.2011

Сообщений: 432

19.11.2013, 17:34

7

так пробовал?

Кликните здесь для просмотра всего текста

Кликните здесь для просмотра всего текста



13



5493 / 4888 / 831

Регистрация: 04.06.2011

Сообщений: 13,587

19.11.2013, 17:46

8

Цитата
Сообщение от Fanera
Посмотреть сообщение

Windows Form есть для С# но нет для C++ или это как то по другому делается?

В CLR нет Windows Form? На скрине — это какие шаблоны выбраны?



0



4299 / 1421 / 463

Регистрация: 16.12.2010

Сообщений: 2,939

Записей в блоге: 3

19.11.2013, 17:53

9

Обращаюсь ко всем отвечающим: народ, автор темы вполне доступно объяснил, чего он хочет. Ни одного поста по теме не было озвучено (кроме последних двух). А это значит, что все эти разговоры — оффтоп, который, должен быть удален.

 Комментарий модератора 
Нечего сказать — пройдите мимо.



3



545 / 378 / 56

Регистрация: 23.06.2013

Сообщений: 1,181

Записей в блоге: 6

19.11.2013, 17:54

10

Цитата
Сообщение от Fanera
Посмотреть сообщение

Windows Form есть для С# но нет для C++ или это как то по другому делается?

https://www.cyberforum.ru/post5282198.html



1



12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

19.11.2013, 18:05

 [ТС]

11

ya_noob

Предлагали что то подобное в другой ветке
по факту получается почти все но последняя запинка …

Миниатюры

Как создать проект Windows Forms в Visual Studio 2013?
 



0



12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

19.11.2013, 18:08

 [ТС]

12

Цитата
Сообщение от alsav22
Посмотреть сообщение

В CLR нет Windows Form? На скрине — это какие шаблоны выбраны?

как то так

Миниатюры

Как создать проект Windows Forms в Visual Studio 2013?
 



0



12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

19.11.2013, 18:09

 [ТС]

13

Цитата
Сообщение от ranebull
Посмотреть сообщение

Предлагаю продолжить тут. Вроде как по теме.



0



Don’t worry, be happy

17781 / 10545 / 2035

Регистрация: 27.09.2012

Сообщений: 26,514

Записей в блоге: 1

19.11.2013, 18:09

14

Создавайте пустой CLR проект и добавляйте форму вручную в него.



0



12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

19.11.2013, 18:12

 [ТС]

15

Цитата
Сообщение от Croessmah
Посмотреть сообщение

Создавайте пустой CLR проект и добавляйте форму вручную в него.

2 поста вверх, результат просмотра youTubа и добавления формы в ручную



0



5493 / 4888 / 831

Регистрация: 04.06.2011

Сообщений: 13,587

19.11.2013, 18:17

16

Цитата
Сообщение от Fanera
Посмотреть сообщение

по факту получается почти все но последняя запинка …

В чём?



0



ranebull

545 / 378 / 56

Регистрация: 23.06.2013

Сообщений: 1,181

Записей в блоге: 6

19.11.2013, 18:20

17

Цитата
Сообщение от Fanera
Посмотреть сообщение

Предлагали что то подобное в другой ветке
по факту получается почти все но последняя запинка …

У вас код с ошибками написан… Не знаю откуда вы его взяли.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include "MyForm.h"
 
using namespace System;
using namespace System ::Windows::Forms;
 
[STAThread]
void main(array<String^>^ arg) {
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
 
    Project1::MyForm form;
    Application::Run(%form);
}



1



12 / 11 / 6

Регистрация: 05.10.2013

Сообщений: 219

19.11.2013, 18:22

 [ТС]

18

Цитата
Сообщение от alsav22
Посмотреть сообщение

В чём?

В том что не компилится, ввидимо из за ошибок которые подчеркнуты красным на скриншоте.
А уж почему они возникают я понятия не имею.

IntelliSense: class «Project1::MyForm» не содержит члена «form»…
и тд….



0



Don’t worry, be happy

17781 / 10545 / 2035

Регистрация: 27.09.2012

Сообщений: 26,514

Записей в блоге: 1

19.11.2013, 18:23

19

Читайте книжки и документацию в первую очередь, а не на ютюбище смотрите

Цитата
Сообщение от ranebull
Посмотреть сообщение

Не знаю откуда вы его взяли.

Цитата
Сообщение от Fanera
Посмотреть сообщение

результат просмотра youTubа и добавления формы в ручную



1



5493 / 4888 / 831

Регистрация: 04.06.2011

Сообщений: 13,587

19.11.2013, 18:26

20

Цитата
Сообщение от Fanera
Посмотреть сообщение

В том что не компилится, ввидимо из за ошибок которые подчеркнуты красным на скриншоте.
А уж почему они возникают я понятия не имею.
IntelliSense: class «Project1::MyForm» не содержит члена «form»…
и тд….

Тут есть ветка по Windows Form, наверное, лучше там спрашивать: https://www.cyberforum.ru/cpp-cli-winforms/



1



Like this post? Please share to your friends:
  • Windows forms app net framework visual studio
  • Windows forms anchor как правильно пользоваться
  • Windows form работа с базой данных
  • Windows form окно на весь экран
  • Windows form как открыть панель элементов