Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПО_ЛР_41.docx
Скачиваний:
2
Добавлен:
27.09.2019
Размер:
112.23 Кб
Скачать
  1. Внимательно прочитать и уяснить условие задачи, которую предстоит решить.

  2. Ознакомиться с необходимым теоретическим материалом - см. Список рекомендуемой литературы (особенно выделенные источники).

  3. Запустите Delphi.

  4. Если новый проект автоматически не открылся, выполните команду меню File|New Project.

  5. Сохраните созданный проект в отдельной папке, дав файлу проекта (*.DPR) имя VCLDEMO.DPR

  6. В вашем проекте VCLDEMO.DPR измените название формы на «The Standard tab» (В Object Inspector|Properties|Caption). Рассмотрите рис.1 и заглядывайте в него при добавлении компонентов на форму, чтобы убедиться в правильности расположения компонентов и соблюдении пропорций.

  7. Измените свойство Name (имя) на «StandardTab» для формы. Затем до­бавте компонент Panel в верхнюю часть экрана. Растяните ее как газетную шапку. Будем использовать ее для заголовка формы. Свойство Caption ком­понента Panel установите текстом «Our Standard Tab Demo». Панель очень полезна для создания выглядящих объемно меток, но в основном она хорошо работает в качестве объединяющего контейнера для других органов управ­ления. Далее, добавте на экран компонент Label и установите его свойство Caption в «Name».

  8. Под метку добавьте компонент Edit. С помощью инспектора объектов удалите все символы из свойства Text этого компонента. Добавьте на форму компоненты MainMenu и PopupMenu. Эти ком­поненты — невизуальные, так что совершенно все равно, где их разместить. Далее, до­бавьте компонент Memo.

  9. В окне инспектора объектов двойным щелчком откройте свойство Lines (строки) и удалите текст «Memo1». Четыре раза нажмите Enter. Этим вы отводите место в текстовом буфере компонента Memo (в процессе работы нашей демонстрации понадобится модифицировать 3-4 строки, и сейчас мы их создали). Если этого не сделать, демонстрация работать не будет. Теперь добавьте на форму компоненты RadioGroup, Scrollbar, ComboBox и ListBox. Убедитесь, что все помещенные на форму компоненты выглядят, как на рис.1

  10. Дважды щелкните на помещенном на форму компоненте RadioGroup и в код ее обработчика события OnClick добавьте следующий фрагмент: procedure TStandardTab.RadioGroup1Click(Sender: TObject); begin If RadioGroup1.ItemIndex=0 Then StandardTab.Color := clSilver; If RadioGroup1.ItemIndex=1 Then StandardTab.Color := clBlue; If RadioGroup1.ItemIndex=2 Then StandardTab.Color := clYellow; If RadioGroup1.ItemIndex=3 Then StandardTab.Color := clRed; end;

  11. Т еперь дважды щелкните на компоненте Scrollbar и добавьте код в со­бытие OnChange: procedure TStandardTab.ScrollBar1Change(Sender: TObject); begin RadioGroup1.ItemIndex := ScrollBar1.Position; end;

  12. Поместите на форму компонент GroupBox и убедитесь, что в группе достаточно места для нескольких компонентов. Добавьте в группу четыре кнопки Button, две RadioButton и два Checkbox. Для каждой из четырех кнопок измените свойство Caption: GO для Buttonl, Update Fonts для Button2, Quit для Button3, Next Page для Button4. Для RadioButton1 в свойстве Caption укажите Memo Box Color White, а для RadioButton2 - Memo Box Color Light Blue. Для CheckBox1 - All Text Italic и для CheckBox2 - All Text Purple.

  13. Внесите код для события OnClick компонента Buttonl: procedure TStandardTab.Button1Click(Sender: TObject); Var x: integer; begin { Очистить содержимое TMemo} Memo1.Clear; { Скопировать в Memo текст, введенный в Name Box (Editl) } Memo1.Lines.Add(Edit1.Text) ; { Скопировать в Memo текст из Combobox } Memo1.Lines.Add(ComboBox1.Text) ; { Скопировать в Memo выбранный текст из окна списка } Memo1.Lines.Add('ListBox String #' +IntToStr(ListBox1.ItemIndex+1)); If RadioButton1.Checked then Memo1.Color:=clWhite; If RadioButton2.Checked then Memo1.Color:=ClAqua; end;

  14. Для события OnClick компонента Button2 внесите код: procedure TStandardTab.Button2Click(Sender: TObject); begin If CheckBox1.State = cbChecked then StandardTab.Font.Style:=[fsItalic] else StandardTab.Font.Style:=[ ]; If CheckBox2.State = cbChecked then StandardTab.Font.Color:=clPurple else StandardTab.Font.Color:=clBlack; end;

  15. И код для события OnClick компонента Button3: procedure TStandardTab.Button3Click(Sender: TObject); begin Close; end;

  16. Код для Button4, которая используется для замены данной формы на следующую, будет добавлен сразу после того, как вы построите вторую форму для закладки Additional

  17. Добавте код в компонент MainMenu и PopupMenu, для чего дважды щелкните на значении свойства Items, где сейчас стоит «(Menu)», запускается конструктор меню. Здесь надо просто изменить надпись на на­звание меню, которое требуется добавить.

  18. Внесите в свойство Caption для первого элемента MainMenu &File. «&» сообщает Delphi, что следующую за ним букву надо показывать подчеркнутой и вклю­чить ее в комбинацию быстрой клавиши, соответствующую данному пункту меню. В данном примере при работе программы нажатие клавиш Alt и 'F' приводит к пункту меню File. После добавления в меню опции File заметьте, что справа от нее появляется окошко. Оно позволяет вам после щелчка на нем добавить следующий пункт меню, аналогичным образом изменив свойство Cap­tion с помощью инспектора объектов. Для добавления пунктов в выпадающее меню можно щелкнуть на имеющемся пункте верхнего меню. Щелкните на «File», и под ним откроется окно. Щелкните на нем: окно подсветится и ин­спектор объектов приготовится к изменению надписи в нем. Добавьте команду Exit в меню File. Измените свойство Caption в инспекторе объектов на 'E&xit', и вы увидите Exit добавленным под пунктом File главного меню. Обратите внимание на пустые графы ниже пункта Exit и направо от пункта File в окне меню. На них щелкают, когда требуется добавить пункты. Если этого не делать, в вашем меню они не появятся.

  19. Добавьте меню Help с опциями Help, About и разделительной линией. Сначала добавляется меню Help, а затем для опции Help вводится «&Неlр» в свойстве Caption так же, как вы делали для пунктов File и Exit. Чтобы добавить разделитель, просто введите дефис (-) в свойство надписи элемента меню сразу под Help. После того, как это сделано, вы увидите разделитель. Затем добавьте опцию About, вписав '&About' под разделительной чертой

  20. Для программирования пунктов выпадающего меню воспользуйтесь имеющейся процедурой события, кото­рую вы уже создали. В инспекторе объектов выберите в выпадающем списке Exitl (опция вашего меню File | Exit). Затем перейдите в инспекторе объектов на страницу Events и щелкните на стрелке вниз в поле события OnClick, чтобы посмотреть имеющиеся варианты. Выберите Button3Click.

  21. Добавим всплывающее меню, и работа с формой будет закончена. Щелк­ните на компоненте PopupMenu, помещенном на форму ранее. Для вызова быстрого меню щелкните правой кнопкой мыши. Выберите из всплывающего меню Menu Designer (конструктор меню). Этот конструктор меню работает точно так же, как конструктор главного меню, только все опции развора­чиваются вниз в единственном окне. Для добавления кода какой-либо опции всплывающего меню необходимо выбрать ее в конструкторе меню. После этого вы оказываетесь в редактировании кода отклика на эту опцию. Добавьте две опции: GO и Update Fonts. Когда закончите, выйдите из конструктора меню. Используйте для них существующие методы, точно так же, как вы делали для команды File | Exit главного меню. В инспекторе объектов вы­берите GO, затем выберите ButtonlClick в событии OnClick. Для следующей опции в инспекторе объектов выберите UpdateFontsl, потом Button2Click в событии OnClick.

  22. Подготовьте свой вариант текста программы и попробуйте решить его с помощью компьютера. Обычно с первого раза решение не удается - это нормально. Нужно повторить редактирование и счет до получения нужного результата.

  23. Сделать отчет.

Все отчеты по лабораторным работам оформляются в виде пояснительной записки и должны содержать следующие элементы:

  • текст пояснительной записки в машинописном или рукописном виде;

  • cписок использованной литературы;

  • машинный листинг программы на языке Delphi (модуль *.DPR и др. по необходимости) - в виде приложения.

  • Копия экрана в отчете

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]