Visual studio как вывести текст

Обновлено: 07.07.2024

Инструментарий:

объект свойство name свойство text
форма Вычисление суммы
кнопка (button) btnExit Выход
текстовое поле (textbox) txtA 0
текстовое поле (textbox) txtB 0
текстовое поле (textbox) txtC 0
текстовое поле (textbox) txtSumma 0
кнопка (button) btnCount Вычислить

Visual c++ текстовые поля

Выполнение:

this-> Close();

  1. Создайте три элемента управления Textbox (txtA,txtB,txtC) для слагаемых. Задайте свойство Text для этих элементов управления, равное 0.
  2. Создайте еще один элемент управления TextBox (txtSumma) (размеры и расположение кнопок см. рис «форма Вычисление_суммы»).
  3. Создайте кнопку Вычислить (btnCount).
  4. Запрограммируйте событие Click для кнопки Вычислить следующим образом:
где System – пространство имен; при написании кода его можно опустить
Parse – функция преобразования строкового значение в целое число;
  1. Запустите приложение, введите значения для слагаемых и посмотрите, что произойдет, если Вы нажмете на кнопку Вычислить.
  2. Сохраните проект.
Дополнительное задание. Измените приложение так, чтобы оно вычисляло сумму квадратов трех чисел. Контрольное задание. Разработайте приложение, которое вычисляет:
  • площадь треугольника по трем сторонам;
  • площадь прямоугольника по двум сторонам;
  • площадь треугольника по двум сторонам и углу между ними;
  • процент от числа.

  1. Какова основная функция элемента управления TextBox?
  2. Какая функция C++ округляет числовые значения?

При написании программ в среде Visual studio иногда возникает необходимость вывода текста на русском языке. Казалось бы, что тут сложного? Берёшь и выводишь! А вот нет, иначе бы не было кучи форумов и страничек в интернете с этой проблемой.
А проблема заключается в кодировке, причём все сайты пишут работающие способы, но, к сожалению, далеко не у всех. В этой статье мы расскажем вам о том, как действительно нужно исправлять эту проблему.

Итак, вы написали программу, в которой решили вывести строку русскими буквами, например, "Русский язык в консоли!". Вы запускаете программу, но вместо заветной строки видите там "кракозябры"! Что же делать?

Программа, выводящая русскую строку в visual studio

В результате видим кракозябры

Программа, выводящая русскую строку в visual studio

А возможный результат может выглядеть так:

Результат может быть как корректным, так и кракозябристым

Результат может быть как корректным, так и кракозябристым

Запустим её, если русский язык уже выводится - поздравляем! Проблема решена! Если нет, то идём дальше.

В верхнем меню выберете пункт файл , Сохранить <название вашего файла> как . В открывшемся окне вместо Сохранить выберем Сохранить с кодировкой , подтвердим, что желаем заменить файлы и выберем кодировку Кириллица (Windows) - кодовая страница 1251 .

Сохраняем файл в другой кодировке

Выбираем сохранение с кодировкой

Выбираем кодировку Кириллица (Windows) - кодовая страница 1251

Выбираем кодировку Кириллица (Windows) - кодовая страница 1251

Нажмём ОК и соберём программу заново.

Нужная кодировка - Кириллица (Windows) - кодовая страница 1251

Нужная кодировка - Кириллица (Windows) - кодовая страница 1251

Запустим программу вновь и теперь русский язык будет корректно выводиться!

Программа запустилась и русский язык выводится

UPD: Ещё один способ заставить работать русский язык

Если ничего из вышеперечисленного не помогло, значит проблема в кодировке самой консоли. А её можно изменить с помощью команды system("chcp 1251"); , то есть программа будет выглядеть так:

Фото Перминова Андрея, автора этой статьи

Выпускник МГУ им. М.В. Ломоносова

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

Доброго времени суток! В этом уроке я кратко расскажу о таком элементе графического интерфейса, как поле ввода текста (TextBox). Расскажу о самых важных, на начальном этапе, свойствах, событиях и методах данного контрола.

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

Элемент TextBox на панели элементов Visual Studio

По традиции, начну с описаний основных свойств элемента.

Основные свойства

Name — задает уникальное имя для поля ввода текста (специфическое свойство, необходимо, для работы с элементом из кода).

Значение Краткое описание
None Рамки вокруг поля ввода нет
FixedSingle Простая рамка из одинарной линии
Fixed3D 3D рамка вокруг поля ввода
Значение Краткое описание
Left Текст выравнивается по левому краю
Right Текст выравнивается по центру
Center Текст выравнивается по правому краю

Основные методы

А вот пример окна с различными полями ввода текста:

Пример окна с различными полями вводатекста

Пример окна с различными полями ввода текста

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

А в следующем уроке, будет практика использования элементов интерфейса, который были описаны в этом и предыдущих уроках!

В этой статье (перевод [1]) будет показано, как создать строку статуса на основе класса StatusStrip, и как использовать её основные возможности для приложений Windows в среде разработки Visual Studio 2010.

Подобно любому другому элементу интерфейса пользователя (Windows Forms control), мы можем создавать строку статуса либо во время разработки (design-time), либо создавать строку статуса динамически, из кода работающего приложения (run-time).

[Создание StatusStrip]

Создание design-time. Чтобы создать StatusStrip control во время разработки формы (design-time), просто перетащите StatusStrip control из панели Toolbox и опустите его на Form.

StatusStrip panel

По умолчанию StatusStrip control будет привязан к нижней стороне окна приложения, как это показано на рисунке 1.

StatusStrip added

Рис. 1. Внешний вид строки статуса по умолчанию.

Разработчик также может добавить в строку статуса StatusStrip некоторые элементы управления (control), включая StatusLabel , ProgressBar , DropDownButton и SplitButton . Если Вы кликните мышью на маленький выпадающий список, то увидите в списке эти четыре control-а, как показано на рис. 2. Если Вы выберете здесь один из этих элементов, то он будет добавлен к StatusStrip control.

StatusStrip add child controls

Рис. 2. Добавление визуальных элементов управления к строке состояния.

Создание run-time. В библиотеке Windows Forms элемент управления StatusStrip представлен классом StatusStrip. Подобно любому другому Windows control, мы можем создать объект класса, настроить его свойства, методы и события, и добавить этот control к другим control-ам Form-ы.

Пример кода ниже показывает создание объекта StatusStrip control. Как только control создан, нам нужно установить его свойства и вызвать метод Form.Controls.Add , чтобы добавить StatusStrip к другим элементам управления формы.

[Свойства StatusStrip]

Design-time. Класс StatusStrip унаследован от классов ToolStrip -> ScrollableControl -> Control, так что он имеет все их общие свойства, поддерживаемые органами управления интерфейса пользователя библиотеки Windows Forms. Некоторые из этих свойств включают Font, BackColor, Dock, BackgroundImage и TextDirection.

Некоторые из свойств StatusStrip использовать нельзя, например свойство Text. Вы можете подумать, что его можно использовать для отображения текста в строке статуса (что вполне логично), но это не так. Вот этот пример кода ни к чему не приведет, текст в строке статуса не появится:

Причина этой проблемы в том, что класс StatusStrip получает свойство Text при наследовании из класса ToolStrip (который в свою очередь наследует его из класса Control). Но у свойства Text класса ToolStrip нет визуального эффекта, просто так почему-то спроектирован класс ToolStrip. Поэтому присваивать значение свойству Text класса StatusStrip бесполезно. Поначалу это может запутать.

Для того, чтобы на самом деле вывести текст в строку статуса StatusStrip, необходимо добавить к StatusStrip элемент StatusLabel.

Для того, чтобы на самом деле вывести текст в строку статуса StatusStrip, необходимо добавить к StatusStrip элемент StatusLabel. В дизайнере формы это делается следующим образом, см. скриншот:

StatusStrip add StatusLabel

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

Мы можем установить свойства StatusStrip control во время разработки формы, используя окно Properties, как это показано на рис. 3.

StatusStrip Properties

Рис. 3. Окно редактирования свойств StatusStrip.

Run-time. Пример кода ниже показывает установку свойств Name, Text, BackColor, Font и ForeColor у StatusStrip control во время работы приложения.

[Размещение на форме StatusStrip]

Design-time. В отличие от старого StatusBar control, теперь мы можем привязать StatusStrip к любой области окна формы. Для этого используется свойство Dock класса StatusStrip. StatusStrip можно привязать вверху (top), внизу (bottom), слева (left), справа (right) или по центру (center) формы. Рис. 4 показывает верхнюю привязку StatusStrip control.

StatusStrip Dock

Рис. 4. Пример отображения строки статуса в верхней части окна формы.

Run-time. У свойства Dock тип перечисления DockStyle. Вот так можно сделать привязку строки статуса к верхней части окна во время работы приложения:

[Фоновое изображение]

Design-time. Свойство BackColor устанавливает цвет фона StatusStrip control. Также мы можем установить картинку в качестве цвета фона для StatusStrip. Для установки фоновой картинки используется свойство BackgroundImage. Когда Вы кликните на свойство BackgroundImage в дизайнере свойств (окно Property), то увидите окно Resource Editor наподобие показанного на рис. 5, где Вы можете найти на диске нужную картинку, или использовать локальные ресурсы с помощью кнопки Import.

StatusStrip BackgroundImage select

Рис. 5. Установка фонового изображения для строки состояния.

Мы также можем установить тип отображения фоновой картинки (layout) с помощью свойства BackgroundImageLayout, так что она может быть растянута (stretched), отображена мозаикой (tiled), отображена в центре (centered) или подогнана по размеру (zoomed), как это показано на рис. 6.

StatusStrip BackgroundImageLayout

Рис. 6. Как отображать фоновую картинку, свойство BackgroundImageLayout.

Run-time. Свойство BackgroundImage имеет тип Image. Мы можем использовать список картинок ImageList для управления всеми изображениями. Объект ImageList является набором объектов Image. Пример кода ниже создает объект ImageList, затем добавляет туда изображение из файла. После этого код устанавливает свойства BackgroundImage и BackgroundImageLayout строки статуса.

[Направление текста]

Design-time. TextDirection еще одно полезное свойство, которое отсутствовало в StatusBar control. С помощью него можно установить направление текста в StatusStrip control. Возможны 3 варианта Horizontal, Vertical90 и Vertical270. На рис. 7 показано направление текста Verical90 в строке статуса StatusStrip control.

StatusStrip TextDirection

Рис. 7. Так выглядит текст в строке статуса при TextDirection == Vertical90.

Run-time. У свойства TextDirection тип перечисления ToolStripTextDirection. Пример кода ниже показывает установку свойства направления текста во время работы приложения.

[Sizing Grip, Grip Style, Layout Style]

Sizing Grip это маленький уголок в правой нижней части окна, предназначенный для изменения размеров окна формы приложения. Этот элемент управления представлен свойством SizingGrip.

StatusStrip Sizing Grip

Свойство SizingGrip работает вместе со свойствами GripStyle и LayoutStyle. Свойство GripStyle используется, чтобы показать или спрятать стиль "уголка". Свойство LayoutStyle показано на рис. 8, оно задает тип размещения "уголка".

StatusStrip LayoutStyle

Рис. 8. Настройка свойства LayoutStyle для Sizing Grip.

Примечание: "уголок" не будет показан, пока Вы также не установите свойство LayoutStyle в одно из overflow-значений.

Run-time. Пример кода ниже устанавливает свойства SizingGrip, GripStyle и LayoutStyle во время работы приложения.

[Добавление элементов управления к StatusStrip]

StatusStrip control ничто иное, как контейнер для дочерних элементов управления (child controls). Таким образом, в StatusStrip может находиться несколько дочерних элементов управления, которые представлены свойством Items. Если Вы кликните на свойство Items у StatusStrip control, то увидите окно диалога Items Collection Editor, где сможете добавлять, обновлять и удалять дочерние элементы управления строки статуса StatusStrip. Этот редактор покажет выпадающий список, где выбирается редактируемый/добавляемый элемент, и кнопку Add, которая дает возможность добавить выбранный дочерний элемент управления. В списке представлено 4 типа элемента: ToolStripStatusLabel, ToolStripProgressBar, ToolStripDropDownButton и ToolStripSplitButton.

Давайте теперь добавим по одному элементу каждого типа, как это можно увидеть на рис. 9. Как только элемент добавлен, можно в правой части окна увидеть его свойства, доступные для редактирования.

StatusStrip Item Collection Editor

Рис. 9. Окно Items Collection Editor строки статуса StatusStrip.

Все дочерние элементы управления, помещенные в StatusStrip control, имеют свои собственные уникальные идентификаторы, и могут использоваться как независимые элементы графического интерфейса пользователя (controls). Это означает, что Вы можете использовать и управлять ими точно так же, как и остальными control-ами, расположенными на форме.

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

StatusStrip controls

Рис. 10. Пример внешнего вида дочерних элементов управления StatusStrip.

Мы также можем устанавливать свойства, события и методы дочерних элементов путем правого клика на нем и выбора окна Properties, точно так же, как это делается с любым другим визуальным объектом управления. Если правым кликом Вы выбрали свойства ProgressBar, то увидите окно Properties примерно как показанное на рис. 11.

StatusStrip ProgressBar Properties

Рис. 11. Окно свойств дочернего ProgressBar.

Примечание: для редактирования свойств дочерних элементов управления строки статуса можно вызвать Items Collection Editor, если сделать правый клик на StatusStrip в редакторе формы, и в контекстном меню выбрать "Правка элементов. " (Edit Items. ).

[Демонстрационный пример приложения со строкой статуса]

Создайте приложение Windows Forms, и добавьте на его форму StatusStrip control. Также добавьте на форму три кнопки. К StatusStrip добавьте дочерние элементы управления: две StatusStripStatusLabel, один StatusStripDropDownButton и один StatusStripProgressBar.

С помощью свойства Items элемента StatusStripDropDownButton добавьте к нему три пункта меню, и поменяйте их текст на Red (красный), Green (зеленый) и Blue (синий). Для каждого из пунктов меню создайте обработчики (event handler). Обработчик для пунктов меню будет выглядеть примерно так:

То, что должно получиться, внешний вид формы показан на рис. 12.

StatusStrip test app form

Рис. 12. Вид формы тестового приложения.

В обработчике кнопки Start установите свойства Value и Text для ProgressBar:

Для демонстрации изменения цвета строки статуса вставите в обработчики пунктов меню Red, Green и Blue следующий код:

[Обновление StatusStrip]

Если неоходимо обновить изменение вида StatusStrip (например текста, полоски прогресса), то необходимо вызвать метод Refresh() визуального элемента:

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

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