Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Решение. Работа 2. Ввод и обработка произвольных текстовых и числовых данных




Работа 2. Ввод и обработка произвольных текстовых и числовых данных.

Упражнения

1) Реализуйте на ПК Пример1.

2) Внесите в Пример1 следующие изменения:

а) Кнопка «Далее» после ее нажатия, не исчезает, а становится неактивной;

б) Надпись на кнопке меняется на "отмена";

в) Размер кнопки становится почти в два раза больше;

г) Надпись «Спасибо» меняет цвет с красного на зеленый, размер с 24 на 48, а расположение надписи становится ближе к верхнему краю окна;

д) Курсор мыши над надписью «спасибо» имеет вид: «песочных часов».

3) Создать обработчик события OnClik для надписи «спасибо», следующих действий: при нажатии на надпись «спасибо» (один щелчок левой кнопкой мыши) исчезают данная надпись и кнопка «отмена», а на середине окна появляется надпись «Вот и все», со следующими атрибутами: размер букв - 72, шрифт- Times New Roman, стиль - полужирный курсив, цвет - синий.

4) Составьте " Программу для развития навыков управления мышью и успокаивания нервов": в окне поочередно появляются кнопки без надписей, разных размеров и форм, с разными координатами. Нажатие на кнопку вызывает ее исчезновение и появление другой и т.д. В процессе конструирования создайте произвольную заставку для программы с указанием названия программы имени программиста и кнопки «СТАРТ», при нажатии которой исчезает заставка и начинает работу программа. Заставку создайте на отдельной панели (компонент Panel).

5) Составьте программу для изучения цифр и цветов для детей дошкольного возраста. В нижней части окна расположите десять кнопок с цифрами 0-9 и семь кнопок с цветами радуги. При нажатии каждой кнопки на все окно появляется соответствующая цифра выбранного цвета.

Для ввода и редактирования текста и чисел можно использовать однострочные и многострочные окна редактирования представляемые компонентами Edit и Memo. Основными свойствами этих компонентов, в которых содержатся вводимый и выводимый текст является: Text – для компонента Edit и Lines – для компонента Memo.

Пример 2. Создайте приложение, которое при нажа­тии кнопки перемножало бы два числа, введенных пользователем, и показывало бы результат умножения. Эти числа можете понимать как хотите: как длину двух сторон прямоугольника, и тогда результат - это площадь, или как текущий курс доллара и сумму в долларах, - тогда результатом будет рублевый эквивалент сум­мы и т. п.

При построении этого приложения мы используем новые типы компонен­тов - окна редактирования. Кроме того, для разнообразия, будем выводить резу­льтат в панель Panel. Сконструируем форму. Перенесите на нее со страницы Addi­tional два окна редактирования с присоединенными к ним метками LabeledEdit, а со страницы Standard - одну панель Panel, одну кнопку Button и одну метку Label для надписи. Разместите все это примерно так, как показано на рисунке а). Так вы можете поступить, если работаете с Delphi 6 и 7. Если вы работаете с более ранними версиями, то в них компонента LabeledEdit нет. Поэтому, вместо двух компонентов LabeledEdit вам надо будет перенести на форму два окна редактиро­вания Edit со страницы Standard и две метки. Начальный вид формы в этом слу­чае показан на рисунке б).

а) б)

Измените надписи в метках компонентов LabeledEdit на что-то осмысленное. Например, на «Число 1», «Число 2», «Результат» или на «Ширина», «Высота», «Площадь» в зависимости от того, что вы хотите понимать под соответствующими числами. Для этого щелкните на символе «+» в свойстве EditLabel этих компонен­тов и измените надпись в свойстве Caption раскрывшихся списков свойств меток. Полезно задать для меток различные атрибуты шрифта, как вы это делали в предыдущей работе.

Если вы работаете с Delphi 4 или 5, то сделайте соответствующие надписи во введенных вами дополнительных метках.

Замените свойство Caption вашей кнопки, например, на «Расчет». Очистите свойство Caption у панели. В метке над панелью напишите «Результат». В свойст­ве Text (текст) окон редактирования задайте «1» - начальное значение текста.

Попробуйте изменить такие свойствами панели, как BevelInner и Bevel­Outer, которые определяют вид основного поля и рамки панели (утопленный - bvLowered или выпуклый - ­bvRaised). Например, можете установить ВеvеlIn­ner = bvLowered и BevelOuter = bvRaised.

Осталось написать обработчик щелчка кнопки. Единственный оператор этого обработчика может иметь вид:

Panel1.Caption:= FloatToStr (StrToFloat (LabeledEdit1.Text) * StrToFloat(LabeledEdit2.Text));

или введите следующую строку, которая выведет математическая запись выполняемой операции:

Panel1.Caption:= LabeledEdit1.Text + ' * '+ LabeledEdit2.Text + ' = ' + FloatToStr (StrToFloat (LabeledEdit1.Text) * StrToFloat(LabeledEdit2.Text));

Для Delphi5 изменяются только имена окон: вместо Labeled­Edit1 и LabeledEdit2 надо писать Edit1 и Edit2.

Попробуем проанализировать приведенный оператор. Начало его вам уже зна­комо: вы присваиваете свойству Caption компонента Panel1 значение выражения, указанного в правой части оператора. Это выражение должно иметь тип строки текста. Начинается строка с текста, введенного пользователем в окно редактирова­ния LabeledEdit1 - этот текст хранится в свойстве Text. Затем вы прибавляете к этому тексту символы «*». Знак «+» в выражениях для строк означает конкате­нацию - сцепление двух строк символов. Затем аналогичным образом к строке до­бавляется текст второго окна редактирования и символ «=». После этого мы хо­тим вставить в строку результат перемножения двух целых чисел. Этот результат будет числом и, чтобы вставить его в текст, надо сначала преобразовать это число в строку. Эту операцию выполняет функция FloatToStr, которая преобразует за­данный ей параметр типа действительного числа в строку символов. Осталось по­лучить само произведение двух чисел. Но числа заданы пользователем в виде тек­стов - строк символов в окнах редактирования. Прежде, чем перемножать, эти строки надо перевести в числа. Эту операцию выполняет функция StrТoFloat, пре­образующая символьное изображение числа в его значение типа действительного числа. Знак *, указанный между двумя вызовами функции StrToFloat, обознача­ет операцию умножения. Программа готова. Можете его сохранить, выполнив команду: File - Save All.




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 608; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.