Главная страница

методичка ПРТ №1. Практическая работа 1 Тема Создание графического интерфейса в Visual Studio 2017 (C)


Скачать 0.55 Mb.
НазваниеПрактическая работа 1 Тема Создание графического интерфейса в Visual Studio 2017 (C)
Дата09.10.2021
Размер0.55 Mb.
Формат файлаdocx
Имя файламетодичка ПРТ №1.docx
ТипПрактическая работа
#244140

Практическая работа № 1

Тема: Создание графического интерфейса в Visual Studio 2017 (C++)

Цель: Получить навыки программирования в объектно-ориентированной среде программирования и научиться создавать графический интерфейс.

Создать приложение можно несколькими способами, наиболее простым является через "CLR Empty Project".

  1. В первую очередь перечислим, какие компоненты должны быть установлены для создания графического приложения на языке С++. Их три, все относятся к разделу "Desktop development with C++":

- VC++ 2017 v141 toolset (x86,x64)

- Windows 10 SDK (10.0.15063.0) for Desktop C++ x86 and x64

- C++/CLI support

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

  1. После установки среды разработки переходим File > New > Project...

В появившемся окне отыскиваем Installed > Visual C++ > CLR > CLR Empty Project



или (в русифицированной версии)



Поля внизу заполняем традиционным для таких программ способом. В названии проекта лучше не допускать пробелов, иначе вам потом придётся мудрить в коде.

  1. Необходимо добавить в приложение главную форму.

В "Solution Explorer" (Обозреватель решений) правой кнопкой мыши на названии проекта, во всплывшем контексном меню Add > New Item...



или



В появившемся окне Visual C++ > UI > Windows Form


Или


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



Эта ошибка хорошо известна ещё по Visual Studio 2015. И более лучшего решения, чем закрывать вкладку, ещё нет. По всей видимости, команда разработчиков Visual Studio не считает эту ошибку достаточно серьёзным делом, чтобы ломать о неё копья.

  1. Но мало просто создать форму, нужно вплести её в создаваемую программу. Для этого в "Solution Explorer" правой кнопкой мыши на названии проекта, во всплывшем контексном меню выбрать Properties.



В открывшемся окне произвести два действия:

• Linker > System > SubSystem, из раскрывающегося списка выбрать "Windows (/SUBSYSTEM:WINDOWS)"



Или



• Linker > Advanced > Entry Point. В пустое поле вписать "main" (безкавычек).



Или



5. В "Solution Explorer" двойным щелчком открыть в редакторе файл MyForm.cpp. Скопировать в него текст

# include "MyForm.h"
using namespace System;
using namespace System::Windows::Forms;
[STAThread]
void main(array^ args) {
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
    Project1::MyForm form;
    Application::Run(%form);
}

Заменив Project1 на название вашего проекта.



Теперь проект компилируем и запускаем.

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


  1. Для того, чтобы добавить на нашу только что созданную форму новые элементы, понадобится панель Toolbox (Панель элементов). Полезно запомнить горячую клавишу






Работа с размещением элементов на форме сложностей вызвать не должна.

Для изменения свойств только что созданного элемента интерфейса щёлкните на нём правой кнопкой и в контекстном меню выберите, соответственно, Properties.

Испытаем кнопку в работе. Сделаем так, чтобы по её названию появлялось окно с умным текстом. Двойной щелчок по элементу на форме вызовет редактор кода с уже прописанным в нём шаблоном. Добавим внутрь фигурных скобок команду
    MessageBox::Show("Hello World",
        "My heading", MessageBoxButtons::OKCancel,
        MessageBoxIcon::Asterisk);


Запускаем и проверяем!


написать администратору сайта