Как скомпилировать формы Windows в исполняемый файл
Обновлено: 21.11.2024
Для большей части программирования в Visual Studio вам потребуется создавать и использовать "проекты". Проекты — это способ, с помощью которого Visual Studio организует и поддерживает различные файлы, используемые для программы. Некоторые из этих файлов являются файлами, которые вы создаете для своего кода C. Другие файлы включают «объектные» файлы, созданные компилятором при компиляции кода, «исполняемый» файл (*.exe), который Visual Studio создает, связывая скомпилированный код с другим кодом, библиотеками и т. д., которые необходимы для запуска. ваша программа, а также различные файлы, используемые Visual Studio для организации и отслеживания статуса вашего проекта.
Создание нового проекта
Чтобы создать новый проект:
- Перейдите в меню "Файл" и выберите "Создать". Должно появиться диалоговое окно "Создать".
- Диалоговое окно «Создать» должно иметь четыре вкладки («Файлы», «Проекты», «Рабочие пространства», «Другие документы»), расположенные в верхней части окна. Выберите вкладку Проекты. После этого должен появиться список типов проектов, которые можно создать.
- Нажмите Консольное приложение Win32 в списке проектов.
- Введите имя проекта в поле «Имя проекта» справа от диалогового окна.
- Выберите каталог для проекта в поле Location справа от диалогового окна.
- После того, как вы ввели имя и каталог для файла, нажмите кнопку ОК.
- После того как вы нажмете кнопку OK, диалоговое окно должно отобразиться в виде набора вариантов для типа проекта или приложения. Выберите «Пустой проект», нажав кнопку рядом с этим вариантом.
- Выбрав тип проекта, нажмите кнопку "Готово". Затем появится диалоговое окно с сообщением о том, что было создано пустое консольное приложение (без файлов кода C — вам нужно будет создать их позже).
- Нажмите кнопку OK, чтобы закрыть диалоговое окно с новой информацией о проекте. Теперь вы готовы начать вводить свой программный код C.
Создание и добавление файлов в проект
Перед созданием и добавлением файлов в проект убедитесь, что вы создали проект и он открыт. Если проект не открыт, сначала откройте его.
Чтобы начать добавлять файлы в проект:
- Перейдите в меню "Файл" и выберите "Создать". Должно появиться диалоговое окно "Создать".
- Диалоговое окно «Создать» должно иметь четыре вкладки («Файлы», «Проекты», «Рабочие пространства», «Другие документы»), расположенные в верхней части окна. Выберите вкладку «Файлы». После этого должен появиться список типов проектов, которые можно создать.
- Нажмите исходный файл C++ в списке типов файлов, которые можно создать.
- Убедитесь, что флажок "Добавить в проект" установлен и название вашего проекта отображается в поле непосредственно под полем "Добавить в проект".
- Введите имя файла в поле Имя файла. Обязательно используйте расширение «.c» для имени файла, например. грамм. "мой файл.c". Если вы не укажете расширение, файл будет создан как файл C++, что впоследствии может вызвать некоторые проблемы.
- Нажмите кнопку OK после ввода необходимой информации для создания нового файла. Затем новый файл следует открыть и отобразить в окне Visual Studio, чтобы вы могли начать связывание информации.
- Обязательно сохраняйте файл (с помощью команды «Сохранить» в меню «Файл») часто и по завершении ввода информации. Нажмите «Консольное приложение Win32» в списке проектов.
Создание исполняемого файла («Сборка» проекта)
Прежде чем вы сможете запустить программу, вы должны создать проект и добавить в него файлы. Для компиляции, компоновки и запуска, т.е. е. чтобы «создать» свою программу, сначала убедитесь, что проект открыт.
WinForms в основном управляется событиями. Приложение состоит из нескольких форм (отображаемых в виде окон на экране), содержащих элементы управления (метки, кнопки, текстовые поля, списки и т. д.), с которыми пользователь взаимодействует напрямую. . В ответ на действия пользователя эти элементы управления вызывают события, которые программа может обрабатывать для выполнения задач.
Как и в Windows, все в WinForms является элементом управления, который сам по себе является типом окна. Базовый класс Control предоставляет основные функции, включая свойства для установки текста, расположения, размера и цвета, а также общий набор событий, которые можно обрабатывать. Все элементы управления являются производными от класса Control, добавляя дополнительные функции. Некоторые элементы управления могут содержать другие элементы управления либо для повторного использования ( Form , UserControl ), либо для макета ( TableLayoutPanel , FlowLayoutPanel ).
Windows Forms продолжает поддерживаться, но в режиме обслуживания. Они будут исправлять ошибки по мере их обнаружения, но новые функции не обсуждаются.
См. также:
Создание простого приложения WinForms с помощью Visual Studio
В этом примере показано, как создать проект приложения Windows Forms в Visual Studio.
Создать проект Windows Forms
Запустите Visual Studio.
В меню "Файл" выберите "Создать", а затем выберите "Проект". Появится диалоговое окно «Новый проект».
Над средней панелью вы можете выбрать целевую платформу из раскрывающегося списка.
На средней панели выберите шаблон приложения Windows Forms.
В текстовом поле Имя введите имя проекта.
В текстовом поле «Расположение» выберите папку для сохранения проекта.
Нажмите "ОК".
Откроется конструктор Windows Forms и отобразится Form1 проекта.
Добавить элементы управления в форму
Из палитры панели инструментов перетащите элемент управления "Кнопка" на форму.
Нажмите кнопку, чтобы выбрать его. В окне свойств задайте для свойства Text значение Say Hello.
Написать код
Дважды нажмите кнопку, чтобы добавить обработчик события Click. Откроется редактор кода с точкой вставки, помещенной в функцию обработчика событий.
Введите следующий код:
Запустить и протестировать
Нажмите F5, чтобы запустить приложение.
Когда ваше приложение запущено, нажмите кнопку, чтобы увидеть "Hello, World!" сообщение.
Закройте форму, чтобы вернуться в Visual Studio.
Откройте текстовый редактор (например, Блокнот) и введите приведенный ниже код:
- Сохраните файл по пути, к которому у вас есть доступ для чтения и записи. Принято называть файл именем содержащегося в нем класса, например X:\MainForm.cs .
Димитар Карамфилов
В последней предварительной версии Visual Studio 2019 больше нет необходимости использовать команду, и вы можете сделать это из пользовательского интерфейса. Сначала щелкните проект правой кнопкой мыши, затем нажмите "Опубликовать", затем выберите папку и нажмите "Создать".
Нажмите кнопку редактирования, чтобы изменить конфигурацию.
В конфигурации публикации вы можете выбрать одиночный EXE-файл.
После того, как все будет готово, сохраните и нажмите «Опубликовать». Теперь вы можете перейти в папку публикации и получить свое приложение. Я протестировал приложение на нескольких машинах, и оно работает без проблем. Весь пакет большой (200 МБ), но содержит все необходимые сборки.
Попробуйте и поделитесь своим мнением
Пакет R3 2019 SP пользовательского интерфейса Telerik для WinForms уже доступен для загрузки в учетных записях клиентов. Если вы новичок в пользовательском интерфейсе Telerik для WinForms, вы можете узнать больше об этом на странице продукта. Он поставляется с 30-дневной бесплатной пробной версией, что дает вам некоторое время, чтобы изучить набор инструментов и рассмотреть возможность его использования для вашей текущей или будущей разработки WinForms.
Димитар Карамфилов
Димитар Карамфилов — сотрудник службы поддержки в команде пользовательского интерфейса для WinForms. Он присоединился к Telerik после окончания Академии Telerik в 2013 году. Помимо работы, он любит активный отдых и чтение философской литературы.
Общие инструкции
Создать проект приложения Windows
Чтобы создать новое приложение Windows, выполните следующие действия:
Перейдите в Файл->Создать->Проект. вкладка в Visual Studio 2005.
На рис. 26-1 показано окно «Новый проект» с именем, расположением и решением для проекта.
Рисунок 26-1. Окно нового проекта
Visual Studio должна была создать следующие файлы: Program.cs , Form1.cs и Form1.Designer.cs . Рисунок 26-2 иллюстрирует обозреватель решений с созданными файлами проекта
Рис. 26-2 Обозреватель решений с созданными файлами проекта
Переименуйте эти файлы, если хотите.
В этом примере они были переименованы в ContactCacheClient.cs , ContactForm.cs и ContactForm.Designer.cs соответственно.
Добавление ссылки на библиотеку Coherence.dll:
В вашем проекте выберите Проект->Добавить ссылку. или щелкните правой кнопкой мыши ссылки в обозревателе решений и выберите Добавить ссылку.
В появившемся окне "Добавить ссылку" выберите вкладку "Обзор" и найдите библиотеку Coherence.dll в своей файловой системе. На рис. 26-3 показаны файлы .dll в окне «Добавить ссылку».
Рис. 26-3. Окно добавления ссылки
Создайте файл App.config
Щелкните правой кнопкой мыши проект в обозревателе решений и выберите Добавить->Новый элемент.. . вкладка.
В окне "Добавить новый элемент" выберите файл конфигурации приложения.
На рис. 26-4 показано содержимое окна «Добавить новый элемент».
Рис. 26-4 Окно добавления нового элемента
Пример 26-1 иллюстрирует пример допустимого файла конфигурации App.config.
Пример 26-1 Пример файла App.config
cache-factory-config — содержит путь к дескриптору конфигурации, используемому CacheFactory для настройки (IConfigurableCacheFactory и Logger), используемых CacheFactory.
cache-config — содержит путь к дескриптору конфигурации кэша, который содержит конфигурацию кэша, описанную ранее (см. «Настройка Coherence*Extend на клиенте»). Этот дескриптор конфигурации кэша используется DefaultConfigurableCacheFactory.
pof-config — содержит путь к дескриптору конфигурации, используемому ConfigurablePofContext для регистрации пользовательских типов, используемых приложением.
Пример 26-2 иллюстрирует пример файла конфигурации coherence.xml
Пример 26-3 иллюстрирует образец файла конфигурации cache-config.xml.
Пример 26-4 иллюстрирует образец файла конфигурации pof-config.xml.
Создание и дизайн приложения
Затем вы должны добавить элементы управления в форму Windows. В этом примере показано, как сохранять объекты в INamedCache , читать из кеша, запрашивать кеш, удалять элемент из кеша и очищать кеш. Для этого мы будем использовать кнопки, которые будут вызывать события при нажатии, пару компонентов TextBox для редактирования объектов и DataGridView для отображения текущего содержимого INamedCache. В этом примере мы будем работать только с типом пользователя ContactInfo, но аналогичный подход можно использовать и с любым другим определяемым пользователем типом.
Чтобы добавить элементы управления в приложение, выполните следующие действия:
Выберите Вид->Панель инструментов.
В окне панели инструментов выберите элементы управления, которые вы хотите использовать, и перетащите их на форму Windows.
Для каждого элемента управления щелкните его правой кнопкой мыши, выберите вкладку "Свойства" и задайте необходимые свойства.
На рис. 26-5 показано, как должен выглядеть пользовательский интерфейс приложения Contact Cache Info после выполнения предыдущих шагов.
Рис. 26-5. Пользовательский интерфейс клиента кэша контактов
Реализовать приложение
Первым шагом в реализации примера приложения Windows является создание класса ContactInfo, реализующего интерфейс IPortableObject.
Пример 26-5 Пример класса, реализующего IPortableObject
Прежде чем приложение сможет начать обработку событий, мы должны связать элемент управления DataGridView с объектом источника данных:
В окне Toolbox выберите объект BindingSource и перетащите его на форму.
Установите его свойства. Введите contactBindingSource в поле Name, а затем задайте источник данных, щелкнув кнопку со стрелкой в правом конце поля DataSource. В раскрывающемся окне выберите Добавить источник данных проекта. и появится мастер настройки источника данных. Выберите Object и найдите класс ContactInfo в своем проекте.
Рис. 26-6 Использование мастера источника данных для привязки элемента управления к источнику данных
Последний шаг — привязать элемент управления DataGridView к contactBindingSource . Это делается путем простого выбора contactBindingSource в раскрывающемся окне в поле DataSource окна свойств DataGridView. Это показано на рис. 26-7.
Рис. 26-7. Выбор источника данных для привязки к элементу управления
Теперь мы привязали contactBindingSource к нашему элементу управления DataGridView, и все дальнейшее взаимодействие с данными, включая навигацию, сортировку, фильтрацию и обновление, выполняется с помощью вызовов компонента BindingSource. Нам также нужны поля IFilter и CacheEventFilter для управления фильтрацией, а также поле WindowsFormsCacheListener, используемое для обеспечения того, чтобы любой код обработки событий, который должен выполняться в ответ на событие кэша, выполнялся в потоке пользовательского интерфейса. Чтобы это работало, нам нужно делегировать методы для каждого события кеша, которое мы обрабатываем, а затем зарегистрировать прослушиватель в кеше с помощью метода AddCacheListener(). Это объясняется более подробно в разделе «Реагирование на события кэширования». В конструкторе мы также получим INamedCache, который используем в приложении, с помощью статического метода CacheFactory.GetCache() и инициализируем поле со списком, используемое для выбора атрибута поиска.
Пример 26-6. Добавление слушателей
Как и в случае с любым другим приложением для Windows, большая часть оставшейся реализации связана с обработкой событий. Поскольку каждый компонент в форме Windows может вызвать событие, необходимо создать обработчики событий для обработки каждого события. Обработчики событий в Visual Studio можно добавить в приложение, выполнив следующие действия:
Щелкните правой кнопкой мыши компонент "Окно", для которого вы хотите реализовать обработчик событий, и выберите "Свойства".
На верхней панели инструментов окна «Свойства» выберите кнопку освещения, и все события, которые может вызвать компонент, будут отображаться.
Рисунок 26-8 Окно свойств
Выберите событие, которое хотите обработать, и дважды щелкните его. Visual Studio добавит в ваше приложение необходимый код, чтобы вы могли обработать это событие. Далее необходимо реализовать пустой метод обработчика событий.
Пример 26-7 иллюстрирует код события в образце приложения Windows:
Пример 26-7 Добавление событий
Мы также должны написать обработчики событий кеша, делегированные в конструкторе. Это показано в примере 26-8:
Пример 26-8. Добавление обработчиков событий кэша
Пример 26.9 иллюстрирует вспомогательные методы, используемые обработчиками событий в предыдущем примере:
Читайте также: