Как сделать приложение на c

Обновлено: 07.07.2024

Я начал искать литературу по WPF, но наступил какой-то затык.

Вот например программа:

Копирую в Visual Studio 2015 (раздел XAML) и. куча ошибок

Может я что-то не так делаю или эта книга описывает нечто другое, отличное от того, что я ищу?

Подскажите, пожалуйста, как начать изучение создания графических Desktop-приложений для Windows?

С чего начать создание приложений для wp 8.1?
Объясните пожалуйста с чего начать создание приложений на вп8,1? На каком языке лучше писать на с++.

Создание графических приложений
Ув.Форумчане, Очень нужно узнать информацию!Есть задача написать программу в среде разработке.

Создание графических приложений на C++
Здраствуйте! Хочу немного разобратся в том, что мне нужно, чтоб писать графические, желательно .

Newbie4
В VisualStudio создайте новый проект типа "WPF Application". Получится простое приложение с одним главным окном, который можно будет сразу же собрать и запустить. Там же можно будет открыть окно в дизайнере, посмотреть его XAML-код и внести какие-нибудь изменения. При этом среда сама сгенерирует код метода 'main', инициализации и запуска. Потом уже, когда хоть немного освоитесь, будет проще разобраться как всё это внутри устроено.

Литература по WPF
Я лично читал только книгу МакДональда. Не сказал бы что там пишется что-то непонятное и сложное.
Из приведённого Вами кода я вижу, что это код для консольного приложения, которое создаёт приложение WPF, окно WPF и отображает его.
Естественно данный код нужно писать не в xaml файл, а в cs-файл. В xaml файл нужно писать xaml код.

insite2012, Я сначала думал Windows Forms осваивать, но там литературы еще меньше.

Там же можно будет открыть окно в дизайнере, посмотреть его XAML-код и внести какие-нибудь изменения.

Носом по клаве постучать? Я вообще не понимаю что там написано, куда уж изменения вносить?

novikov.ea, спасибо за ссылки.

МакДональд пишет может и правильно, но уж явно не для новичков. Вот например:

Наличие мощной видеокарты не дает абсолютной гарантии, что вы получите мак-
симальную, с аппаратной поддержкой производительность на WPF. Программное обес-
печение также играет важную роль. Например, WPF не может обеспечить аппаратного
ускорения на видеокартах, если используются устаревшие драйверы. (Если у вас ус-
тановлена устаревшая видеокарта, такие драйверы, скорее всего, будут единственно
доступными.) WPF также обеспечивает более высокую производительность в среде опе-
рационной системы Windows Vista, где может воспользоваться преимуществами новой
модели дисплейных драйверов Windows Vista ( Windows Vista Display Driver Model —
WDDM). WDDM предлагает несколько важных усовершенствований по сравнению с
Windows XP Display Driver Model (XPDM). Что более важно, WDDM позволяет заплани-
ровать несколько операций GPU сразу и отображать страницы памяти видеокарты на
нормальную системную память, если вы израсходовали всю память видеокарты.
В качестве главного эмпирического правила: WPF предоставляет некоторого рода
аппаратное ускорение всем драйверам WDDM (Windows Vista) и драйверам XPDM
(Windows XP), созданным после ноября 2004 г., когда Microsoft издала новые руководства
по разработке драйверов. Конечно, уровень поддержки отличается. Когда запускается
инфраструктура WPF, она оценивает вашу видеокарту и присваивает ей рейтинг от 0
до 2, как описано во врезке “Уровни WPF”.

.NET является программной платформой, разработанной компанией Microsoft. Выделим некоторые из ее особенностей:


(Изображение взято с блога Microsoft)


В следующем окне вы увидите разные релизы платформы, нас интересует самый верхний. В строке нужного релиза найдите раздел Build apps – SDK.


В зависимости от ОС, под которой вы будете разрабатывать, нажмите на соответствующую ссылку для скачивания дистрибутива.


Установка для Windows

Выберете дистрибутив под Windows и дождидесь его скачивания. После запуска файла установки, на первом экране вы увидите краткую информацию о продукте. Нажмите на кнопку “Установить”.



На этом процесс установки для Windows можно считать завершенным.

Перейдите на страницу официальной документации Microsoft по установке .NET Core и убедитесь, что ваша операционная система (тип и версия) поддерживает возможность установки .NET Core.

Согласно приведенной инструкции нужно выполнить несколько шагов. Добавьте ключ подписывания пакета Microsoft в список доверенных ключей и добавьте репозиторий пакетов:

После этого запустите установку SDK:

И проверить версии среды выполнения:

Среда разработки (IDE)

Microsoft Visual Studio


Сохраните файл установки на компьютере. Это веб-установщик, поэтому он имеет небольшой размер. Запустите его, в результате вам будет представлено окно приветствия.


Нажмите на кнопку “Продолжить” дождитесь окончания подготовительного этапа. После этого откроется окно с настройкой компонентов, для выполнения всех работ по курсу достаточно выбрать “Разработка классических приложений .NET”, “ASP.NET и Разработка веб-приложений”.


Дождитесь окончания установки, это может занять продолжительное время в зависимости от мощности вашего компьютера и скорости доступа в интернет.


Microsoft VS Code

Еще один продукт от Microsoft , он позиционируется как легковесный редактор кода, включает в себя отладчик, инструменты для работы с Git , подсветку синтаксиса, IntelliSense, средства для рефакторинга и многое другое. VS Code предоставляет большое количество настроек визуального оформления редактора.

Нажмите на кнопку “Download for Windows” и сохраните дистрибутив на свой компьютер.


Запустите скачанный файл. Нажмите “Далее” в окне с лицензионным соглашением.


В следующем окне оставьте все галочки без изменений и нажмите “Далее”.


В последнем окне нажмите кнопку “Установить” и дождитесь окончания установки.



JetBrains Rider



Нажмите “ Next ” и выберите место установки. На следующем экране можно произвести дополнительные настройки ассоциации файлов или оставить все как есть, после этого нажмите кнопку “ Next ”, а затем “ Install ”.


Дождитесь окончания установки.


Онлайн интерпретаторы

Создание проекта в Microsoft Visual Studio (Windows)


Снимите галочку “Проверка подлинности …”, если у вас есть Microsoft-аккаунт , то нажмите на кнопку “Войти”, если нет, то на надпись “Не сейчас, возможно позже”.

Далее выберите тему по вкусу и нажмите “Запуск Visual Studio ”.


Все подготовительные шаги пройдены, нажмите на кнопку “Создание проекта”.


Выберете шаблон “Консольное приложение” и нажмите “Далее”.


Укажите имя проекта, например “ MyFirstProject ” и место где он будет сохранен.


В результате будет открыто окно Visual Studio с созданным проектом.


Проект в Visual Studio представляет собой набор файлов, их структура представлена в окне “Обозреватель решения”. Основной файл, который нас сейчас интересует это Program.cs . Откройте его, мы добавили поясняющие комментарии в код модуля:

Запустим наше приложение и посмотрим, что произойдет.

Для этого можно использовать несколько способов:

  • На панели вверху нажать кнопку с изображением зеленого треугольника. Название у кнопки будет такое же как у вашего “решения”.
  • Нажать сочетание клавиш Ctrl + F5 , запустится “решение” без отладки, либо F5 для режима отладки.
  • Через панель меню: Отладка -> “Запуск без отладки”


Процесс запуска приложения “под капотом” достаточно сложен, он включает в себя создание ряда каталогов, компиляцию проекта в сборку (файл с расширением .exe) и непосредственно запуск получившегося файла. Результат сборки вы можете найти в папке \bin\Debug – если выбран режим сборки Debug , либо в \bin\Release – если выбран Release . Режим по умолчанию – это Debug .

После выполнения команды в папке с проектом будет размещен необходимый набор файлов. Для запуска проекта воспользуйтесь командой:

Как и в случае с проектом в Visual Studio , в консоли будет выведен текст “Hello World!”.

Поработаем над кодом программы: вместо текста выведем текущую дату. Для этого в файле Program.cs замените строку

Сохраните файл и выполните команду:

Вместо текста в консоли должна появиться текущая дата.

Компиляция файла с исходным кодом вручную (Windows)

В меню “Пуск” найдите и откройте “ Developer Command Prompt for VS 2019 ”, перейдите в каталог с файлом и выполните в нем команду:

wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 67 человек(а).

Всегда хотели программировать на C++? Лучший способ научиться - это посмотреть примеры. Взгляните на основную схему программирования на С++, чтобы узнать о структуре программы C++, затем создайте простую программу на свое усмотрение.

Получите компилятор и/или IDE. Три хороших варианта - это GCC, или если ваш компьютер работает под управлением Windows - Visual Studio Express Edition или Dev-C++.

    Простая программа, предоставленная Бьерном Страуструпом (разработчик языка C++), чтобы проверить ваш компилятор:

Сохраните программу в виде файла .cpp под именем, которое точно отражает вашу программу. Не спутайте, есть много других расширений для файлов C + +, выберите любой из них (например, *.cc, *.cxx, *.c++, *.cp) .
СОВЕТ: Следует сказать Save as Type:

Приложение Windows Form — это приложение, которое предназначено для работы на компьютере. Он не будет работать в веб-браузере, потому что тогда он станет веб-приложением.

Этот урок будет посвящен тому, как мы можем создавать приложения для Windows. Мы также изучим некоторые основы работы с различными элементами приложений Windows.

В этом уроке вы узнаете

Основы Windows Forms

Приложение Windows Forms работает на настольном компьютере. Приложение форм Windows обычно имеет набор элементов управления, таких как метки, текстовые поля, списки и т. Д.

Итак, пример элементов управления, доступных в приведенном выше приложении

  1. Это коллекция элементов управления метками, которые обычно используются для описания смежных элементов управления. Таким образом, в нашем случае у нас есть 2 текстовых поля, и метки используются, чтобы сообщить пользователю, что одно текстовое поле предназначено для ввода имени пользователя, а другое — для пароля.
  2. 2 текстовых поля используются для хранения имени пользователя и пароля, которые будут введены пользователем.
  3. Наконец, у нас есть кнопка управления. К кнопке управления обычно прикрепляется некоторый код для выполнения определенного набора действий. Так, например, в приведенном выше случае мы могли бы заставить кнопку выполнить действие по проверке имени пользователя и пароля, которые вводит пользователь.

Шаг 1) Первый шаг включает создание нового проекта в Visual Studio. После запуска Visual Studio вам нужно выбрать пункт меню New-> Project.

Шаг 2) Следующий шаг — выбрать тип проекта в качестве приложения Windows Forms. Здесь также необходимо указать название и местонахождение нашего проекта.

Если вышеуказанные шаги будут выполнены, вы получите следующий вывод в Visual Studio.

Вывод:-

Вы увидите конструктор форм, отображаемый в Visual Studio. Именно в этом конструкторе форм вы начнете создавать приложение Windows Forms.

В обозревателе решений вы также сможете увидеть решение DemoApplication. Это решение будет содержать ниже 2 файла проекта

  1. Приложение Form называется Forms1.cs. Этот файл будет содержать весь код приложения Windows Form.
  2. Основная программа с именем Program.cs является файлом кода по умолчанию, который создается при создании нового приложения в Visual Studio. Этот код будет содержать код запуска приложения в целом.

В левой части Visual Studio вы также увидите панель инструментов. Панель инструментов содержит все элементы управления, которые можно добавить в Windows Forms. Элементы управления, такие как текстовое поле или метка, являются лишь некоторыми из элементов управления, которые можно добавить в Windows Forms.

Ниже приведен скриншот того, как выглядит Панель инструментов.

После того, как вы перетащите метку на форму, вы можете увидеть метку, встроенную в форму, как показано ниже.

Если вы выполните все вышеперечисленные шаги и запустите свою программу в Visual Studio, вы получите следующий вывод

Вывод:-

Добавление элементов управления в форму

Давайте посмотрим на другие элементы управления, доступные для форм Windows, и рассмотрим некоторые их общие свойства.

В нашем примере мы создадим одну форму, которая будет иметь следующую функциональность.

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

Групповая коробка

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

Шаг 1) Первый шаг — перетащить элемент управления Groupbox на форму Windows из панели инструментов, как показано ниже.

После внесения вышеуказанных изменений вы увидите следующий вывод

Вывод:-

Контроль над этикетками

Шаг 2) После добавления метки перейдите в окно свойств, щелкнув элемент управления меткой. В окне свойств перейдите к свойству Text каждого элемента управления label.

После внесения вышеуказанных изменений вы увидите следующий вывод

Вывод:-

Вы можете видеть элементы управления надписью, добавленные в форму.

Текстовое окно

Текстовое поле используется для того, чтобы пользователь мог ввести текст в приложение форм. Давайте посмотрим, как мы можем реализовать это на примере, показанном ниже. Мы добавим в форму 2 текстовых поля, одно для Имени и другое для адреса, который будет введен для пользователя.

Шаг 1) Первый шаг — перетащить элемент управления текстовым полем на форму Windows из панели инструментов, как показано ниже.

Шаг 2) После добавления текстовых полей перейдите в окно свойств, щелкнув элемент управления текстовым полем. В окне свойств перейдите к свойству Name и добавьте осмысленное имя в каждое текстовое поле. Например, назовите текстовое поле для пользователя как txtUser, а для адреса — txtAddress. Соглашение и стандарт именования должны быть сделаны для элементов управления, потому что становится легче добавить дополнительную функциональность к этим элементам управления, что мы увидим позже.

После внесения вышеуказанных изменений вы увидите следующий вывод

Вывод:-

На выходе вы можете четко видеть, что текстовые поля были добавлены в форму.

Список

Список используется для отображения списка элементов в форме Windows. Давайте посмотрим, как мы можем реализовать это на примере, показанном ниже. Мы добавим в форму список для хранения некоторых городов.

Шаг 1) Первый шаг — перетащить элемент управления со списком на форму Windows из панели инструментов, как показано ниже.

Шаг 2) После того, как список был добавлен, перейдите в окно свойств, нажав на элемент управления списка.

После внесения вышеуказанных изменений вы увидите следующий вывод

Вывод:-

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

Переключатель

Radiobutton используется для демонстрации списка элементов, из которых пользователь может выбрать один. Давайте посмотрим, как мы можем реализовать это на примере, показанном ниже. Мы добавим переключатель для мужской / женской опции.

Шаг 1) Первый шаг — перетащить элемент управления radiobutton на форму Windows из панели инструментов, как показано ниже.

Шаг 2) После добавления радиокнопки перейдите в окно свойств, щелкнув элемент управления радиокнопки.

Как только вы сделаете вышеуказанные изменения, вы увидите следующий вывод

Вывод:-

Вы увидите переключатели, добавленные в форму Windows.

флажок

Шаг 1) Первый шаг — перетащить элемент управления флажком на форму Windows из панели инструментов, как показано ниже.

Шаг 2) После того, как флажок был добавлен, перейдите в окно свойств, нажав на элемент управления флажок.

После внесения вышеуказанных изменений вы увидите следующий вывод

Вывод:-

кнопка

Шаг 1) Первый шаг — перетащить элемент управления кнопки на форму Windows из панели инструментов, как показано ниже.

Шаг 2) После добавления кнопки перейдите в окно свойств, нажав на элемент управления Button.

После внесения вышеуказанных изменений вы увидите следующий вывод

Вывод:-

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

При работе с формой окна вы можете добавлять события в элементы управления. Событие — это то, что происходит при выполнении действия. Вероятно, наиболее распространенным действием является нажатие кнопки на форме. В Windows Forms вы можете добавить код, который можно использовать для выполнения определенных действий при нажатии кнопки в форме.

Обычно, когда кнопка нажимается на форме, это означает, что должна выполняться некоторая обработка.

Давайте посмотрим на одно из событий и как оно может быть обработано, прежде чем мы перейдем к сценарию события кнопки.

Шаг 1) Дважды щелкните по списку в конструкторе форм . Делая это, Visual Studio автоматически откроет файл кода для формы. И он автоматически добавит метод события в код. Этот метод события будет запускаться всякий раз, когда выбран какой-либо элемент в списке.

Как только вы внесете вышеуказанные изменения и запустите программу в Visual Studio, вы увидите следующий вывод

Вывод:-

Теперь давайте посмотрим на последний элемент управления, который представляет собой метод нажатия кнопки. Опять же, это следует той же философии. Просто дважды щелкните кнопку в конструкторе форм, и он автоматически добавит метод для обработчика события кнопки. Тогда вам просто нужно добавить код ниже.

  1. Это метод обработчика событий, который автоматически создается Visual Studio при двойном щелчке по кнопке управления. Вам не нужно беспокоиться о сложности имени метода или параметров, передаваемых в метод.
  2. Здесь мы получаем значения, введенные в текстовое поле имени и адреса. Значения могут быть взяты из свойства text текстового поля. Затем мы присваиваем значения двум переменным: name и address соответственно.
  3. Наконец, мы используем метод MessageBox для отображения значения имени и адреса для пользователя.

Как только вы внесете вышеуказанные изменения и запустите программу в Visual Studio, вы увидите следующий вывод

Вывод:-

Управление Tree и PictureBox

Управление Деревом

— Элемент управления деревом используется для перечисления элементов в дереве, как мода. Вероятно, лучший пример — это когда мы видим сам Windows Explorer. Структура папок в проводнике Windows похожа на древовидную структуру.

Давайте посмотрим, как мы можем реализовать это на примере, показанном ниже.

Шаг 1) Первый шаг — перетащить элемент управления Tree в форму Windows из панели инструментов, как показано ниже.

Шаг 2) Следующий шаг — начать добавлять узлы в коллекцию дерева, чтобы он мог соответственно появиться в дереве. Во-первых, давайте выполните следующие подэтапы, чтобы добавить корневой узел в коллекцию деревьев.

Шаг 3) Следующий шаг — начать добавлять дочерние узлы в коллекцию деревьев. Давайте выполним следующие подэтапы, чтобы добавить дочерний корневой узел в коллекцию деревьев.

После внесения вышеуказанных изменений вы увидите следующий вывод.

Вывод:-

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

PictureBox Control

Этот элемент управления используется для добавления изображений в Windows Forms. Давайте посмотрим, как мы можем реализовать это на примере, показанном ниже.

Шаг 1) Первый шаг — перетащить элемент управления PictureBox в форму Windows из панели инструментов, как показано ниже.

Шаг 2) Следующий шаг — прикрепить изображение к элементу управления графическим блоком. Это можно сделать, выполнив следующие шаги.

Как только вы сделаете вышеуказанные изменения, вы увидите следующий вывод

Правила игры SameGame

Правила SameGame предельно простые. Ваша задача — удалить все цветные блоки с игрового поля. Для того чтобы удалить блок, игрок должен кликнуть по любому блоку, который стоит рядом (вертикально или горизонтально) с другим блоком того же цвета. Таким образом уничтожится целая цепочка блоков одного цвета. Блоки, которые при этом находились сверху, упадут вниз, заполняя освободившееся пространство. При удалении всего столбца, стоящие справа столбцы сдвигаются влево, занимая пустое место. Игра заканчивается тогда, когда у игрока не остается больше возможных ходов. Цель игры состоит в том, чтобы как можно быстрее очистить доску от цветных блоков.

Стоит заметить, что некоторые реализации игры SameGame также могут дополняться использованием алгоритмов для подсчета очков игрока. Реализацию подобного функционала можно рассмотреть в качестве дополнительного урока.

Перед началом работы

Вам потребуются базовые знания в таких разделах языка C++ как функции, рекурсия, классы и наследование классов. В качестве среды разработки была выбрана бесплатная версия Microsoft Visual Studio 2017 Community Edition в операционной системе Windows 7 (детально об установке IDE). Если версии вашей операционной системы или среды разработки не совпадают с вышеуказанными версиями, то некоторые детали или внешний вид отдельных компонентов могут отличаться от тех, которые вы будете видеть на скриншотах данного туториала. Также не советую использовать Express-версии пакета Visual Studiо, т.к. в них не входит компонент MFC.

Чему вы научитесь?

Почему именно MFC?

Создание проекта

Создавать нашу игру мы будем в Microsoft Visual Studio 2017. Все инструкции и описания, приведенные ниже, могут быть с легкостью адаптированы и для других версий Visual Studio. Итак, для начала запустите Visual Studio и создайте новый проект. Тип проекта "Visual C++" > "MFC/ATL" > "Приложение MFC" :


Имя задайте SameGame . Если вы задали другое имя, отличное от SameGame , то имена ваших классов будут немного отличаться от тех, которые будут на этом уроке.

На следующем шаге вы увидите окно с большим набором различных опций, влияющих на итоговый исходный код, который будет автоматически сгенерирован по завершению работы мастера настройки. На следующем скриншоте показано, какие параметры необходимо выбрать, чтобы получить то, что нам нужно:


Затем в следующих окнах оставляйте всё как есть, пока не доберетесь до окна:


Опция "Утолщенная граница фрейма" позволяет пользователю изменить размер окна нашей программы. Но поскольку наша игра имеет фиксированный размер, то флажок с этой опции нужно будет снять. "Развернуть окно" нам также не понадобится, как и "Начальная строка состояния" .

Далее мы переходим на страницу "Дополнительные функции" :


Отключите опции "Печать и предварительный просмотр" , "Элементы управления ActiveX" . Если есть возможность, то укажите 0 в опции "Число файлов в текущем списке файлов" , поскольку мы не будем подгружать в нашу программу какие-либо дополнительные файлы.

Далее рассмотрим последнюю страницу мастера настройки MFC-приложений, на которой можно увидеть список созданных классов:


В результате будут автоматически сгенерированы 4 класса, которые станут основными классами в нашей игре.

К классу CSameGameView мы вернемся немного позже. А пока рассмотрим класс CSameGameApp , который является классом-обёрткой для всего нашего приложения и функции main() в том числе. Базовым для него всегда будет класс CWinApp .

Следующим рассмотрим класс CSameGameDoc , в котором будут храниться все данные нашего приложения. Для него базовым будет класс CDocument .

И, наконец, класс CMainFrame , базовым для которого будет CFrameWnd . Он также является классом-обёрткой для окна нашей программы. Класс основного фрейма содержит меню и представление клиентской области. Клиентская область — это место, где отрисовывается наша игра.

Теперь возвратимся к пропущенному ранее классу CSameGameView — базовый класс, который представляет собой раскрывающийся список с набором общедоступных представлений, каждое из которых имеет свои особенности в использовании и применении. Тип представления по умолчанию — CView , который является общим представлением, где все отображения и взаимодействия с пользователем должны выполняться вручную. Это как раз то, что нам нужно.

Сейчас быстренько пройдемся по списку и поговорим, для чего используется каждый тип представления:

CEditView — это общее представление, которое состоит из простого текстового поля.

CFormView — позволяет разработчику вставлять в него другие основные элементы управления, т.е. поля редактирования, поля со списком, кнопки и т.д.

CHtmlEditView — имеет HTML-редактор, встроенный в представление.

CHtmlView — вставляет элемент управления — браузер Internet Explorer.

CListView — имеет область, похожую на окно Проводника со списками и значками.

CRichEditView — похож на редактор WordPad; позволяет не только вводить текст, но и форматировать его, изменять цвет и тому подобное.

CScrollView — это общее представление, похожее на CView , но допускающее прокрутку.

CTreeView — вставляет элемент управления древовидной структурой.

Завершение работы мастера приложений MFC приведет к созданию и запуску приложения MFC. Поскольку мы еще не написали никакого кода, то увидим окно, в котором ничего нет, но все равно это полностью функционирующее приложение. Ниже приведен скриншот того, как должно выглядеть ваше базовое приложение (чтобы скомпилировать программу, нужно перейти в меню Visual Studio "Отладка" > "Запуск без отладки" ):


Читайте также: