Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Visual C++(.Net) / Visual C++(.Net).doc
Скачиваний:
167
Добавлен:
09.05.2015
Размер:
1.18 Mб
Скачать

Методы TextBox

Приведем перечень некоторых методов компонента.

AppendText– добавляет текст к текущему тексту в окне компонента.

Clear– удаляет весь текст из поля ввода/вывода.

Copy– копирует выбранные строки в буфер памяти.

CreateGraphics– с помощью этого метода можно создать графический объект для рисования на компоненте.

Cut– вырезает отмеченное множество строк в поле ввода/вывода и помещает их в буфер памяти.

DeselectAll– снимает выделение в компоненте.

Focus– устанавливает фокус ввода в компоненту.

Hide– прячет компонент от пользователя.

Paste– заменяет текущий выделенный фрагмент в поле ввода/вывода содержимым буфера памяти.

Select– выбирает заданный текст внутри компонента.

SelectAll– выбирает весь текст внутри компонента.

Show– делает компонент видимым.

Undo– отменяет последнюю операцию редактирования в поле ввода.

Вызов метода происходит по следующей форме:

this->TextBox1->имя_метода();

Еще один способ вызова метода такой:

String ^s=”Дополнительный текст!”;

this->TextBox1->AppendText(s);

Заметим, что форма вызова метода полностью зависит от структуры метода.

Компонент RichTextBox

Компонент находится в списке CommonControlsпалитры компонентов.

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

Пример

Рассмотрим пример создания простейшего приложения. Допустим, необходимо создать калькулятор, который рассчитывает стоимость заправки бензином на АЗС. В дальнейшем будем усложнять это приложение. Но на начальном этапе создадим окно с двумя компонентами TextBox, в первый (назовем егоlitr) будет вводиться стоимость литра бензина, во второй (назовем егоvol) – количество покупаемых водителем литров. ВMessageBoxпри нажатии на кнопку «Рассчитать» будет выведена стоимость заправки (рис.7).

Рис.7. Пример работы с текстовыми компонентами

Для того чтобы произвести расчет, необходимо написать обработчик события Clickдля компонентаButton. При этом в качестве перемножаемых значений воспользуемся информацией, помещенной в компонентыTextBox. Очевидно, что текст, содержащийся в этих компонентах, имеет строковый, а не числовой (в данном случае необходимо использоватьdouble) тип. Это означает, что необходимо выполнить преобразование типов. Данная операция выполняется с помощью методаToDouble. Код будет иметь следующий вид:

double l,v;

l=Convert::ToDouble(litr->Text);

v=Convert::ToDouble(vol->Text);

Далее производим расчет по формуле.

double s=l*v;

Для отображения полученной информации в свойстве Textкомпонента либо для вывода этого значения вMessageBoxтребуется выполнить обратное преобразование. Это осуществимо с помощью методаToString. Поэтому команда вывода результата в окно информационного окна будет выглядеть следующим образом.

MessageBox::Show("Стоимость заправки равна " +s.ToString("n")+" руб.", "Бензиновый калькулятор", MessageBoxButtons::OK, MessageBoxIcon::Asterisk);

Результат работы программы приведен на рис.8.

Рис.8. Программа расчета стоимости заправки

В данном случае осуществлялся перевод строки в вещественное число. При переводе строки в целое число используется метод Convert::ToInt32().

В качестве параметра метода ToString()в данном случае использован параметр«n», позволяющий представить информацию в числовом формате с разделителями групп разрядов. Допустимо также использовать параметр«c»-- денежный с разделителями групп разрядов и обозначением валюты и«f» -- числовой без разделителей групп разрядов.

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