Информатика -взгляд 2


Пример на Паскале Раскрашивание круга - часть 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() возвращает ноль. Эта функция потребуется для определения, все ли символы во введенной строке допустимы.




Начало  Назад  Вперед



Книжный магазин