ПРАКТИЧЕСКАЯ РАБОТА № 6 – Использование кнопок и их свойства


Практически закрепить знания и умения использования возможностей среды Delphi для создания кнопок и их свойства

Ход работы

  1. Создать в своей папке в папке MyPrograms_Delphi папку ПР№6.
  2. Создать в папке в текстовом редакторе Word файл с именем ПР№6_Властивости_ПИБ, в котором выполнить Завдання1-3.
  3. Задание 1. Записать свойства формы:

    свойство

    описание

    Name

    Caption

    Width

    Height

    Top

    Left

    Font

    Icons

    BorderIcons

    BorderStyle

    bsSingle

    bsSizeable

    bsDialog

    bsNone

    bsSizeToolWin

    bsToolWindow

    Position

    poDefault

    poDefaultPosOnly

    poDefaultSizeOnly

    poDesigned

    poDesktopCenter

    poScreenCenter

    WindowState

    wsMaximized

    wsMinimized

    wsNormal

  4. Задача 2. Записать назначения компонента События:

    событие

    Действие, происходящее

    OnClick

    OnDblClick

    OnMouseDown

    OnMouseUp

    OnMouseMove

    OnKeyPress

    OnKeyDown

    OnKeyUp

    OnCreate

    OnPaint

    OnEnter

    OnExit

  5. Задача 3. Записать, что означает каждая команда программы (где s — путь, t — время, v — скорость).

    procedure TForm1.Button1Click (Sender: TObject);

    var s, t, v: real; begin

    s = StrToFloat (Edit1.text) t = StrToFloat (Edit2.text) v = s / t;

    label4.Caption: = ‘Скорость V =’ + FloatToStr (v) + ‘км / ч.’;

    end.

  6. Запустить среда Delphi и создать новый проект.
  7. Задача 4. На форме расположены три кнопки. Записать процедуры, содержащиеся в кнопках 1 и 2. В результате нажатия кнопки 1 ее ширина и высота увеличиваются на пять пикселей. Форма и кнопка 2 не меняют размеров. По мере увеличения кнопки 1 кнопка 2 смещается, а кнопка 3 уменьшается в размерах. Если нажать кнопку 2, описан процесс идет в обратном порядке — кнопка 3 увеличивается, кнопка 1 уменьшается. В результате нажатия на кнопку 3 форма закрывается. результат нажатия на кнопку 1 показано на образце.image
  8. Разместить на форме три кнопки.
  9. Ширина и высота кнопки (как и других видимых компонентов) определяются параметрами width и height, значения которых можно задавать в ходе проектирования формы растяжением компонентов с помощью мыши или изменением числовых значений в Object Inspector. В нашем случае эти значения следует менять программно. поэтому проведем двойной щелчок мышью на кнопке 1 и впишем воткрытый метод обработки нажатия TForm1.Button1Click такие строки:procedure TForm1.Button1Click (Sender: TObject); beginbutton1.Width = button1.Width + 5; button1.Height = button1.Height + 5; end;
  10. Запустить программу на выполнение, а затем нажать кнопку 1 — кнопка 1 увеличилась, кнопки 2 и 3 остались без изменений, поскольку никакого кода для управления этими кнопками мы не писали.
  11. Содержание кнопку 2 справа вниз. За расположение кнопки на форме соответствуют параметры left и top. Их также можно задавать в ходе проектирования формы растяжением компонентов за уголки с помощью мыши или изменением числовых значений в Object Inspector. В нашем случае эти значения следует менять программно.Напомним, что чем больше значение left, тем больше смещается справа компонент на форме. Чем больше top, тем ниже размещается компонент. Вписываем в методTForm1.Button1Click такие строки: button2.Top = button2.Top + 5;button2.Left = button2.Left + 5;

    image

    Если теперь запустить программу на выполнение, то при нажатии на кнопку 1 она будет увеличиваться, а кнопка 2 смещаться вправо вниз, при этом кнопка 3 остается на месте без изменений в размерах (рис. 4.15)

  12. Уменьшим размеры кнопки 3, дописав в метод TForm1.Button1Click такие строки:
    button3.Width = button3.Width — 5;button3.Height = button3.Height — 5;

    Теперь после запуска программы и нажатия на кнопку 1 первые две кнопки ведут себя по-прежнему, а третья уменьшается в размерах (рис. 4.16).

  13. Осталось только сместить кнопку 3. Как и в случае с кнопкой 2, это достигается программными строками:
    button3.Top = button3.Top + 5;button3.Left: -button3.Left + 5;

    Теперь кнопка 1 ведет себя так, как это описано в самом начале (см. Рис. 4.13).

    image

Метод, который выполняется в результате нажатия на кнопку 2, фактически повторяет действия метода кнопки 1, но меняет все числовые значения в обратном направлении. Другими словами, когда процедура в кнопке 1 увеличивает какой-то параметр, то процедура в кнопке 2 — уменьшает, и наоборот. Подобные операции легко запрограммировать, скопировав содержание кнопки 1 на кнопку 2 и заменив знаки «+» на «-» и наоборот. Очевидно, что для этого будет использован метод TForm1.Button2Click:

  1. Закрытие формы с помощью кнопки 3 осуществляется вызовом процедуры закрытия формы:
  2. . Задача решена. Сохраним созданный нами приложение на диске и запустим его на выполнение

Задания для самостоятельной работы

  1. Записать процедуры, содержащиеся в кнопках 1 и 2. В результате нажатия кнопки 1 ее ширина уменьшается на 6 пикселей за счет увеличения кнопок 2 и 3, а в результате нажатия кнопки 2 все происходит наоборот. нажатием кнопки 3 форма закрывается.image
  2. Записать процедуры, содержащиеся в кнопках 1 и 2. В результате нажатия кнопки 1 она становится шире и выше на 5 пикселей за счет кнопок 2 и 3. Если нажать кнопку 2, все происходит наоборот. нажатием кнопки 3 форма закрывается.image
  3. Записать процедуры, содержащиеся в кнопках 1 и 2. В результате нажатия кнопки 1 она становится шире на 5 пикселей за счет кнопки 3, одновременно увеличивается и кнопка 2. Если нажать кнопку 2, все происходит наоборот. нажатием кнопки 3 форма закрывается.image
  4. Записать процедуры, содержащиеся в кнопках 1 и 2. В результате нажатия кнопки 1 она вместе с кнопкой 2 перемещается в правую часть формы, а кнопка 3 — в левую. Если нажать кнопку 2, все три кнопки возвращаются обратно. Считать, что по ширине кнопки 1 и 3 занимают всю форму (между ними нет просвета). нажатием кнопки 3 форма закрывается.image
  5. Записать процедуры, содержащиеся в кнопках 2 и 3. В результате нажатия кнопки 2 она меняется, как это показано на рисунке. Кнопка 3 занимает место кнопки 2. Если нажать кнопку 3, это перемещение происходит в обратном порядке. нажатием кнопки 1 форма закрывается.

image

Домашнее задание

  1. Создать проект, «Свойства формы».В этом проекте мы рассмотреть свойства формы. Для этого на форму установить кнопки (компонент Button) и дать им названия: уменьшить форму, растянуть форму, спрятать кнопки, показать кнопки, а также создать две кнопки для задания цвета формы и форма на весь экран, свернуть окно, закрыть окно.
    1. Создать форму и разместить компоненты на форме;
    2. Задать свойства компонентов:
      1. Форме дать название «Работа с кнопками»
      2. предоставляем названия кнопкам Button
      3. Расположите кнопки на форме лучше и задайте им нужные свойства.
    3. Написать процедуры обработки событий: procedure TForm1.Button1Click (Sender: TObject); begin

Form1.Height = Form1.Height-100; Form1.Width = Form1.Width-50; end;

procedure TForm1.Button2Click (Sender: TObject); begin

Form1.Height = Form1.Height + 200; Form1.Width = Form1.Width + 100; end;

procedure TForm1.Button3Click (Sender: TObject); begin

Button1.Visible = False; Button2.Visible = False; Button3.Visible = False; Button4.Visible = False; Button5.Visible = False; end;

procedure TForm1.Button6Click (Sender: TObject); begin

Button1.Visible = True; Button2.Visible = True; Button3.Visible = True; Button4.Visible = True; Button5.Visible = True; end;

procedure TForm1.Button4Click (Sender: TObject); begin

Form1.Color = clBlue; end;

procedure TForm1.Button5Click (Sender: TObject); begin

Form1.Color = clYellow; end;

procedure TForm1.Button7Click (Sender: TObject); begin

Form1.WindowState = wsMaximized; end;

procedure TForm1.Button8Click (Sender: TObject); begin

Form1.WindowState = wsMinimized; end;

procedure TForm1.Button9Click (Sender: TObject); begin

Close; end;

контрольные вопросы

  1. Укажите назначение строки кода Рrocedure TForm1.Button1Click (Sender: TObject) ;.
  2. Событие будет осуществляться при обработке кода Form1.Height = Form1.Height-100 ;?
  3. Событие будет осуществляться при обработке кода Button1.Visible = True ;?
  4. Событие будет осуществляться при обработке кода Form1.Color = clYellow ;?
  5. Событие будет осуществляться при обработке кода Form1.WindowState = wsMaximized ;?
[Всего голосов: 4    Средний: 5/5]

Читать  Практическая работа №17 – Программирование создания простейших движущихся изображений