Форум программистов, компьютерный форум, киберфорум
ranebull
Войти
Регистрация
Восстановить пароль

Создание графического приложения в VS 2013 c помощью C++/CLI

Запись от ranebull размещена 05.02.2014 в 12:41
Показов 35497 Комментарии 9

Для последней версии Visual Studio 2013 (всех редакций):
Создать проект->Visual C++->CLR->Пустой проект CLR->
После создания проекта нажать на вкладку Проект->Добавить новый элемент->UI->форма Windows Form.
Потом добавить следующий код в MyForm.cpp:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include "MyForm.h" //the header name for your form
 
using namespace CyberForum; //name of your project
 
[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
 
    Application::Run(gcnew MyForm());
    return 0;
}
Далее нажимаем вкладку проект-Свойства : (имя текущего проекта).
Свойства конфигурации-Компоновщик-Система-Подсистема-вставляем Windows (/SUBSYSTEM:WINDOWS).
Свойства конфигурации-Компоновщик-Дополнительно-Точка входа-вставляем main
Также в MyForm.cpp можно добавить следующий код:
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);
 
    Project2::MyForm form;   //Project2 - name of your project
    Application::Run(%form);
}
Нажмите на изображение для увеличения
Название: Cyber1.PNG
Просмотров: 2680
Размер:	54.4 Кб
ID:	2088 Нажмите на изображение для увеличения
Название: Cyber2.PNG
Просмотров: 2132
Размер:	45.7 Кб
ID:	2089 Нажмите на изображение для увеличения
Название: Cyber3.PNG
Просмотров: 1732
Размер:	31.0 Кб
ID:	2090

Нажмите на изображение для увеличения
Название: Cyber4.PNG
Просмотров: 1875
Размер:	33.0 Кб
ID:	2091

UPD: Добавлен вариант экспорта шаблона (спасибо mustimur):
Для этого из меню "Файл" выбираем пункт "Экспорт шаблона". В появившимся мастере шаблонов соглашаемся со всем, только проверяем, чтобы стояла галочка на "Автоматический импорт шаблонов в Visual Studio". Жмем готово. Теперь в мастере проектов появился новый пункт.
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 2038
Размер:	100.3 Кб
ID:	2196   Нажмите на изображение для увеличения
Название: Безымянный1.png
Просмотров: 1680
Размер:	35.8 Кб
ID:	2197   Нажмите на изображение для увеличения
Название: Безымянный2.png
Просмотров: 2085
Размер:	39.7 Кб
ID:	2198  

Нажмите на изображение для увеличения
Название: Безымянный3.png
Просмотров: 2334
Размер:	144.7 Кб
ID:	2199  
Вложения
Тип файла: pdf Создание графического приложения в VS 2013 c помощью CLI.pdf (511.7 Кб, 1622 просмотров)
Размещено в C++
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 9
Комментарии
  1. Старый комментарий
    Аватар для tezaurismosis
    Отличный гайд, всё очень подробно, спасибо.
    Запись от tezaurismosis размещена 28.02.2014 в 14:38 tezaurismosis вне форума
  2. Старый комментарий
    Хотел тоже такой блог сделать, но смысла дублировать нет, от себя добавлю, чтоб это не проделывать постоянно можно сделать шаблон.После того как вы все проделали первого поста (создали запускаемый проект с пустой формой) можно осуществить экспорт его шаблона. Для этого из меню "Файл" выбираем пункт "Экспорт шаблона". В появившимся мастере шаблонов соглашаемся со всем, только проверяем, чтобы стояла галочка на "Автоматический импорт шаблонов в Visual Studio". Жмем готово. Теперь в мастере проектов появился новый пункт.

    (Фактически новый пустой проект с формой). К сожалению не могу прикрепит сюда изображения С пояснениями, если надо ranebul могу их прислать в ЛС, чтобы Вы их разместили в описание.
    Запись от mustimur размещена 30.03.2014 в 18:57 mustimur вне форума
  3. Старый комментарий
    Аватар для akk
    Спасибо, но было бы классно, если бы вы добавили как запустить полученный exe на другом компьютере, понимаю, что его нужно как-то статически линковать, но у меня что-то не получатся.
    Запись от akk размещена 09.07.2014 в 02:40 akk вне форума
  4. Старый комментарий
    Вопрос отпал
    Запись от Jotun размещена 04.07.2015 в 14:40 Jotun вне форума
  5. Старый комментарий
    Попрошу добавить. В namespace должно быть не имя проекта, а созданный проектом namespace. Который определяется в хедере формы. И от изменения имени проекта сам неймспейс не измениться. При необходимости, меняйте его там. (он у меня был русский, от русской VS, а я предпочитаю кодить на инглише)

    А за сам урок благодарю. Очень помог.
    Запись от sanchoz размещена 13.11.2015 в 16:47 sanchoz вне форума
  6. Старый комментарий
    Аватар для jkrnd
    Прекрасно, ничего лишнего в шаблоне.
    В файл cpp добавлять оба представленные в руководстве блока кода или один из них? Если один из них, то какой?
    Запись от jkrnd размещена 23.04.2017 в 18:36 jkrnd вне форума
  7. Старый комментарий
    Аватар для Lagos
    Спасибо, все прекрасно работает, кроме одного: в 17 студии не вижу экспорта шаблонов, соответственно, не могу сделать шаблон. Почему так? Спасибо.
    Запись от Lagos размещена 15.05.2017 в 21:14 Lagos вне форума
  8. Старый комментарий
    Цитата Сообщение от Lagos
    Спасибо, все прекрасно работает, кроме одного: в 17 студии не вижу экспорта шаблонов, соответственно, не могу сделать шаблон. Почему так? Спасибо.
    Потому что " Экспорт шаблонов " в панели " Проект "
    Запись от V1pl размещена 16.01.2020 в 23:03 V1pl вне форума
  9. Старый комментарий
    Аватар для Avazart
    Создание графического приложения в VS 2013 c помощью C++/CLI
    А может лучше Не НААДО ...
    Запись от Avazart размещена 17.01.2020 в 16:50 Avazart вне форума
 
Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru