
- •Содержание
- •Лабораторная работа №13 Изучение среды разработчика
- •Лабораторная работа № 14 События в Delphi
- •Лабораторная работа №15 Примеры создания модулей
- •Лабораторная работа №16 Примеры использования компонентов Label, Edit, Memo
- •Лабораторная работа №17 Примеры использования командных кнопок
- •Лабораторная работа№18 Изучение методов и свойств
- •Лабораторная работа№19 Пример использования компонентов RadioGroup и CheckListBox, Radiobutton, CheckBox.
- •Лабораторная работа№20 Примеры использования компонентов ListBox и ComboBox.
- •Лабораторная работа№21 Примеры использования компонента StringGrid.
- •Лабораторная работа №22 Отладка программ
- •Лабораторная работа№23 Примеры использования компонентов Image, Shape, Timer.
- •Лабораторная работа №24 Работа с формами
- •Лабораторная работа№25 Примеры использования компонента MainMenu и PopupMenu.
- •Лабораторная работа№26 Примеры использования компонентов OpenDialog, SaveDialog и FontDialog.
- •Лабораторная работа№27 Создание мультимедийных приложений.
- •Лабораторная работа№28 Печать текстовая и графическая.
- •Лабораторная работа№29 Работа с базами данных
- •Регистрация базы данных – создание псевдонима
- •Создание программы в Delphi
- •Лабораторная работа№30 Сортировка и фильтрация данных
- •Лабораторная работа№31 Вычисляемые поля. Перенос полей на форму
Лабораторная работа№25 Примеры использования компонента MainMenu и PopupMenu.
Цель занятия: освоить навыки работы с компонентами TShape и TmainMenu, научиться использовать эти компоненты, применяя функции MessageDlg, ColorDialog в программах
Студент должен
знать:
расположение компонентов TShape и TMainMenu на Странице Палитры компонентов;
для чего предназначены функции MessageDlg и ColorDialog
свойства и методы компонентов TShape и TMainMenu;
назначение компонентов TShape и TMainMenu;
как изменять свойства компонентов TShape и TMainMenu во время выполнения программы;
как управлять методами во время выполнения программы;
уметь:
изменять значения свойств компонентов TShape и TMainMenu;
писать адекватные реакции на события;
изменять свойства компонентов TShape и TMainMenu во время выполнения программы;
управлять методами компонентов во время выполнения программы;
Примеры и задания:
I. Рассмотрите приведенный ниже пример, поясните процедуры.
Пример.
Создать программу, на форме которой будет находиться компонент TShape. В программе должны быть предусмотрены возможность изменять положение компонента на форме при помощи компонента TScrollBar, а также возможность задавать цвет фигуры при помощи главного меню TMainMenu.
Вид окна программы представлен на рисунке.
var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.N15Click(Sender: TObject); begin If MessageDlg('Вы действительно хотите выйти?',mtConfirmation,[mbYes,mbNo],0)=mrYes then Close; end; procedure TForm1.N2Click(Sender: TObject); begin Form1.Color:=RGB(Random(255),Random(255),Random(255)); end; procedure TForm1.N3Click(Sender: TObject); begin If ColorDialog1.Execute then Form1.Color:=ColorDialog1.Color; end; procedure TForm1.N5Click(Sender: TObject); begin Shape1.Brush.Color:=ClRed; N5.Checked:=True; N6.Checked:=False; N7.Checked:=False; N16.Checked:=False; N5.Enabled:=False; N6.Enabled:=True; N7.Enabled:=True; N16.Enabled:=True; end; procedure TForm1.N6Click(Sender: TObject); begin Shape1.Brush.Color:=ClBlue; N6.Checked:=True; N5.Checked:=False; N7.Checked:=False; N16.Checked:=False; N5.Enabled:=True; N6.Enabled:=False; N7.Enabled:=True; N16.Enabled:=True; end; procedure TForm1.N7Click(Sender: TObject); begin Shape1.Brush.Color:=ClYellow; N5.Checked:=False; N6.Checked:=False; N7.Checked:=True; N16.Checked:=False; N5.Enabled:=True; N6.Enabled:=True; N7.Enabled:=False; N16.Enabled:=True; end; procedure TForm1.N11Click(Sender: TObject); begin Shape1.Shape:=stEllipse; N9.Checked:=False; N10.Checked:=False; N11.Checked:=True; N12.Checked:=False; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N16Click(Sender: TObject); begin Shape1.Brush.Color:=ClGreen; N5.Checked:=False; N6.Checked:=False; N7.Checked:=False; N16.Checked:=True; N5.Enabled:=True; N6.Enabled:=True; N7.Enabled:=True; N16.Enabled:=False; end; procedure TForm1.N9Click(Sender: TObject); begin Shape1.Shape:=stCircle; N9.Checked:=True; N10.Checked:=False; N11.Checked:=False; N12.Checked:=False; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N10Click(Sender: TObject); begin Shape1.Shape:=stRectangle; N9.Checked:=False; N10.Checked:=True; N11.Checked:=False; N12.Checked:=False; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N12Click(Sender: TObject); begin Shape1.Shape:=stSquare; N9.Checked:=False; N10.Checked:=False; N11.Checked:=False; N12.Checked:=True; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N13Click(Sender: TObject); begin Shape1.Shape:=stRoundRect; N9.Checked:=False; N10.Checked:=False; N11.Checked:=False; N12.Checked:=False; N13.Checked:=True; N14.Checked:=False; end; procedure TForm1.N14Click(Sender: TObject); begin Shape1.Shape:=stRoundSquare; N9.Checked:=False; N10.Checked:=False; N11.Checked:=False; N12.Checked:=False; N13.Checked:=False; N14.Checked:=True; end; procedure TForm1.ScrollBar1Change(Sender: TObject); begin Shape1.Top:=200 div 2 - ScrollBar1.Position div 2; Shape1.Height:=ScrollBar1.Position; end; procedure TForm1.ScrollBar2Change(Sender: TObject); begin Shape1.Left:=200 div 2 - ScrollBar2.Position div 2; Shape1.Width:=ScrollBar2.Position; end; procedure TForm1.ComboBox1Change(Sender: TObject); begin Case ComboBox1.ItemIndex of 0: Shape1.Brush.Color:=clRed; 1: Shape1.Brush.Color:=clBlue; 2: Shape1.Brush.Color:=clGreen; 3: Shape1.Brush.Color:=clYellow; 4: Shape1.Brush.Color:=clWhite; 5: If ColorDialog1.Execute then Shape1.Brush.Color:=ColorDialog1.Color; end; end; procedure TForm1.FormActivate(Sender: TObject); begin Shape1.Top:=200 div 2 - ScrollBar1.Position div 2; Shape1.Height:=ScrollBar1.Position; Shape1.Left:=200 div 2 - ScrollBar2.Position div 2; Shape1.Width:=ScrollBar2.Position; end;
Пример 2.
Создать программу, которая будет содержать компоненты меню TMainMenu, которые будут выбирать фигуру, ее цвет и выход из приложения.
Рекомендуемый вид формы приведен на рисунке.
var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.N15Click(Sender: TObject); begin If MessageDlg('Вы действительно хотите выйти?',mtConfirmation,[mbYes,mbNo],0)=mrYes then Close; end; procedure TForm1.N2Click(Sender: TObject); begin Form1.Color:=RGB(Random(255),Random(255),Random(255)); end; procedure TForm1.N3Click(Sender: TObject); begin If ColorDialog1.Execute then Form1.Color:=ColorDialog1.Color; end; procedure TForm1.N5Click(Sender: TObject); begin Shape1.Brush.Color:=ClRed; N5.Checked:=True; N6.Checked:=False; N7.Checked:=False; N16.Checked:=False; end; procedure TForm1.N6Click(Sender: TObject); begin Shape1.Brush.Color:=ClBlue; N6.Checked:=True; N5.Checked:=False; N7.Checked:=False; N16.Checked:=False; end; procedure TForm1.N7Click(Sender: TObject); begin Shape1.Brush.Color:=ClYellow; N5.Checked:=False; N6.Checked:=False; N7.Checked:=True; N16.Checked:=False; end; procedure TForm1.N11Click(Sender: TObject); begin Shape1.Shape:=stEllipse; N9.Checked:=False; N10.Checked:=False; N11.Checked:=True; N12.Checked:=False; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N16Click(Sender: TObject); begin Shape1.Brush.Color:=ClGreen; N5.Checked:=False; N6.Checked:=False; N7.Checked:=False; N16.Checked:=True; end; procedure TForm1.N9Click(Sender: TObject); begin Shape1.Shape:=stCircle; N9.Checked:=True; N10.Checked:=False; N11.Checked:=False; N12.Checked:=False; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N10Click(Sender: TObject); begin Shape1.Shape:=stRectangle; N9.Checked:=False; N10.Checked:=True; N11.Checked:=False; N12.Checked:=False; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N12Click(Sender: TObject); begin Shape1.Shape:=stSquare; N9.Checked:=False; N10.Checked:=False; N11.Checked:=False; N12.Checked:=True; N13.Checked:=False; N14.Checked:=False; end; procedure TForm1.N13Click(Sender: TObject); begin Shape1.Shape:=stRoundRect; N9.Checked:=False; N10.Checked:=False; N11.Checked:=False; N12.Checked:=False; N13.Checked:=True; N14.Checked:=False; end; procedure TForm1.N14Click(Sender: TObject); begin Shape1.Shape:=stRoundSquare; N9.Checked:=False; N10.Checked:=False; N11.Checked:=False; N12.Checked:=False; N13.Checked:=False; N14.Checked:=True; end;
II. Задания для самостоятельного выполнения.
Изменить исходную задачу так, чтобы для выбора цвета фигуры применялся TColorDialog.
Контрольные вопросы.
Для чего предназначены функции MessageDlg и ColorDialog
Охарактеризовать свойства и методы компонентов TShape и TMainMenu;
Как изменять свойства компонентов TShape и TMainMenu во время выполнения программы? Привести примеры.
Как задать горячие клавиши в TMainMenu?
Как сделать так, чтобы был отмечен пункт меню?
Для чего предназначены два компонента ScrollBar в программе?