КАТЕГОРИИ: Архитектура-(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) |
Обработка нажатия кнопки
Сохранение проекта Перед тем как приступить к программированию, проект надо сохранить. Это действие выполняется командой File > Save All (Файл > Сохранить все), после чего сначала выбирается каталог и указывается имя файла, в котором хранится программное описание (на Паскале) структуры и работы спроектированной формы. Имя файла будет иметь расширение PAS по умолчанию. Далее Delphi 4 спросит, куда и под каким именем сохранить файл проекта, содержащий всю информацию об используемых формах и модулях (их может быть в одном проекте сколько угодно, но одна форма всегда будет главной) и всевозможные настройки. Название файла проекта не должно совпадать с названием файла с исходным текстом программы. В создаваемой программе вручную придется запрограммировать фактически только одно событие — нажатие на кнопку Закрасить. Чтобы создать первоначально пустую подпрограмму, вызываемую при нажатии на эту кнопку, надо просто дважды щелкнуть на ней мышкой. При этом Delphi 4 вызовет редактор, автоматически сгенерирует нужный текст и разместит курсор именно в том месте, где можно начать описание нужного алгоритма. procedure TForml.ButtonlClick(Sender: TObject); begin end;
Обработчик события Нажатие на кнопку Button 1 — это обычная подпрограмма, метод класса TForm 1 (этот класс описывает главную форму Form 1). Единственный параметр Sender характеризует источник сообщения о случившемся событии. Его практически всегда можно игнорировать. Алгоритм работы данного метода будет следующим. Первоначально надо убедиться, что длина введенной в поле Editl строки равна б символам и каждый из этих символов — шестнадцатеричная цифра. Если это не так, то выполнение обработчика надо сразу завершить (для этого предназначена стандартная процедура Паскаля Exit, мгновенно завершающая работу текущей подпрограммы). Если же введенные данные корректны, их надо: 1. Преобразовать в промежуточную строку в формате $00хххххх, где хххххх — шесть введенных цифр. 2. Эту строку преобразовать в число, которое будет рассматриваться как цвет. 3. Установить новый цвет круга на основании полученного значения. Содержимое поля ввода Editl хранится в виде строки в его свойстве Text. Доступ к этому свойству осуществляется с помощью конструкции Editl Text. Длина строки определяется стандартной функцией length() со строкой в качестве параметра. Стандартная функция Pos(), получая две строки как аргументы, проверяет, не содержится ли первая строка во второй, и если содержится, то возвращает номер начальной позиции. В противном случае Pos() возвращает ноль. Эта функция потребуется для определения, все ли символы во введенной строке допустимы. Стандартная функция UpperCase() преобразует строку к верхнему регистру. Такое преобразование требуется, чтобы разрешить ввод значений цветов на любых регистрах. Преобразование строки в число выполняет стандартная функция StrTolnt(). Объект Shape"! имеет свойство Brush (Кисть для фона), которое, в свою очередь, имеет вложенное свойство Color (Цвет заливки). Его и надо в конечном счете изменить. Как только это произойдет, цвет круга в окне автоматически изменится на новый. procedure TForml.ButtonlClick(Sender: TObject); var i: integer; s: string; begin // если длина введено строки не равна 6, // то закончить работу if length(Editl.Text)<> 6 then exit; // в локальную переменную s заносится строка, // содержащая допустимые символы s:= "0123456789ABCDEF"; // проверяется каждый символ во введенной строке for i:= 1 to 6 do // если очередной символ не найден в строке s, значит, // он недопустим, и работу требуется прекратить if pos(Uppercase(Editl.Text[i]), s) = 0 then exit; // все нормально — в переменной s // готовим промежуточную строку s:= "$00"+Editl.Text; // Устанавливаем значение цвета заливки круга равным // числу, преобразованному из строки в переменной s Shapel.Brush.Color:= StrToInt (s); end;
Дата добавления: 2014-12-26; Просмотров: 394; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |