- •Введение
- •Лабораторная работа №1. Создание простого приложения
- •1 ) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию щелчка по командным кнопкам (программирование событий):
- •3) Компиляция и выполнение приложения
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию событий
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №2. Циклические программы. Многострочное поле memo
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию щелчка по командным кнопкам (программирование событий)
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №3. Работа с одномерными массивами
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию событий
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 4. Работа с двумерными массивами
- •Контрольные вопросы
- •Лабораторная работа № 5. Процедуры и функции в delphi
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 6. Рекурсивные процедуры и функции
- •Контрольные вопросы
- •Лабораторная работа №7. Разработка приложения с несколькими модулями
- •2) Последовательность действий по программированию событий
- •Лабораторная работа №8. Работа со строками
- •1) Последовательность действий по созданию интерфейса пользователя
- •2) Последовательность действий по программированию событий
- •3) Откомпилируйте приложение и проверьте его работу задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №9. Создание текстового редактора
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 10. Методы простой сортировки
- •Задание для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 11. Поиск данных в массиве
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №12. Работа с файлами
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа №13. Работа с типизированными файлами (файлы записей)
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 14. Динамические структуры данных . Стек и очередь
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Лабораторная работа № 15. Практическое применение стека и очереди
- •Лабораторная работа №16. Линейные списки
- •Лабораторная работа №17. Работа с бинарными деревьями поиска
- •Задание для самостоятельной работы
- •Лабораторная работа №18. Основы объектно-ориентированного программирования
- •Задание для самостоятельной работы
- •Лабораторная работа №19. Графика в delphi. Компоненты shape и chart
- •Контрольные вопросы
- •Лабораторная работа №20. Графика в delphi. Рисование по пикселам и пером
- •Контрольные вопросы
- •Лабораторная работа № 21. Вычисление суммы ряда
- •Литература
- •Содержание
- •214013 Г. Смоленск, Энергетический проезд, 1
3) Откомпилируйте приложение и проверьте его работу задания для самостоятельной работы
Введите строку и подсчитайте количество слов в строке.
Введите строку. Замените все слова «школа» на «институт».
Введите строку. Выведите самое длинное слово.
Контрольные вопросы
Работа со строками в Delphi
Процедуры и функции работы со строками в Delphi
Лабораторная работа №9. Создание текстового редактора
ЦЕЛЬ РАБОТЫ: Изучение принципов работы с такими компонентами Delphi, как главное меню, панель инструментов (страница Win32 палитры компонентов) и компонентов – диалогов (страница Dialogs палитры компонентов), а также возможностей компонентов Memo и RichEdit (страница Win32 палитры компонентов).
ПОДГОТОВКА К РАБОТЕ: Изучить и описать основные свойства и методы компонентов Memo, RichEdit, MeinMenu, ToolBar, OpenDialog и SaveDialog.
Последовательность действий по созданию текстового редактора.
Создайте приложение, изображенное на рисунке 9.1.
Для этого:
Перенесите на форму следующие компоненты:
memo1
ToolBar1 – панель инструментов (страница Win32 палитры компонентов)
MainMenu1 – главное меню (страница Standard палитры компонентов)
ImageList1 – хранилище изображений (страница Win32 палитры компонентов)
OpenDialog1, SaveDialog1 и FontDialog1 (страница Dialogs палитры компонентов).
Для компонента memo1 в инспекторе объектов установите следующие свойства: Align - alClient, ScrollBars – ssBoth и очистите свойство Lines.
Для компонента ImageList1 (хранилище изображений) добавьте список изображений для этого:
Сделайте двойной щелчок мыши по компоненту ImageList1, на экране появляется диалоговое окно, изображенное на рисунке 9.2.
В данном диалоговом окне нажмите кнопку «Add» и последовательно добавьте из каталога C:\Program Files\ Common Files\Borland Shared\Images\Buttons\ следующие файлы – Floppy.bmp, FoldrDoc.bmp, DoorShut.bmp и Font.bmp. Причем, при выборе каждого файла в ImageList1 добавляется сразу два изображения. Не нужное затем удалите с помощью кнопки «Delete».
Для компонента ToolBar1 установите в инспекторе свойство Images – ImageList1, то есть укажите, откуда устанавливать на инструментальную панель рисунки.
Для компонента MainMenu1 установите в инспекторе свойство Images – ImageList1, то есть укажите, откуда устанавливать на главное меню рисунки.
Настройте компонент MainMenu1. Для этого щелкните дважды по установленному на форме компоненту MainMenu1. Появится окно, изображенное на рисунке 9.3. Создайте меню, имеющее вид, изображенный на рисунке 9.4.
Д ля комопнентов, OpenDialog1 и SaveDialog1 настройте свойство Filter для чтения текстовых файлов. Пример настройки изображен на рисунке 9.5.
В области глобальных переменных добавьте переменную fn для хранения имени редактируемого файла:
var
Form1: TForm1;
fn:String;
Для события OnClick пункта главного меню «Открыть» напишите следующий программный код:
procedure TForm1.N2Click (Sender: TObject);
begin
If OpenDialog1.Execute then
begin
fn:=OpenDialog1.FileName;
memo1.Lines.LoadFromFile(fn);
end;
end;
Для пункта главного меню «Открыть» установите в свойстве ImageIndex значение -0 (чтобы связать первый рисунок с данным пунктом меню)
Для события OnClick пункта главного меню «Сохранить» напишите следующий программный код:
procedure TForm1.N3Click(Sender: TObject);
begin
If Length(fn)>=0 then memo1.Lines.SaveToFile(fn);
end;
Для пункта главного меню «Сохранить» установите в свойстве ImageIndex значение равное 1 (чтобы связать второй рисунок с данным пунктом меню)
Для события OnClick пункта главного меню «Сохранить как» напишите следующий программный код:
procedure TForm1.N4Click(Sender: TObject);
begin
If SaveDialog1.Execute
then memo1.Lines.SaveToFile(SaveDialog1.FileName);
end;
Для события OnClick пункта главного меню «Выход» напишите следующий программный код:
procedure TForm1.N5Click(Sender: TObject);
begin
Form1.Close;
end;
Для пункта главного меню «Выход» установите в свойстве ImageIndex значение равное 2 (чтобы связать третий рисунок с данным пунктом меню)
Для события OnClick пункта главного меню «Копировать» напишите следующий программный код:
procedure TForm1.N13Click(Sender: TObject);
begin
memo1.CopyToClipboard;
end;
Для события OnClick пункта главного меню «Вставить» напишите следующий программный код:
procedure TForm1.N14Click(Sender: TObject);
begin
Memo1.PasteFromClipboard;
end;
Для события OnClick пункта главного меню «Очистить» напишите следующий программный код:
procedure TForm1.N15Click(Sender: TObject);
begin
memo1.Clear;
end;
Для события OnClick пункта главного меню «Выделить все» напишите следующий программный код:
procedure TForm1.N16Click(Sender: TObject);
begin
memo1.SelectAll;
end;
Для события OnClick пункта главного меню «Удалить» напишите следующий программный код:
procedure TForm1.N17Click(Sender: TObject);
begin
Memo1.ClearSelection;
end;
Для события OnClick пункта главного меню «Вырезать» напишите следующий программный код:
procedure TForm1.N18Click(Sender: TObject);
begin
Memo1.CutToClipboard
end;
Для события OnClick пункта главного меню «Шрифт» напишите следующий программный код:
procedure TForm1.N8Click(Sender: TObject);
begin
If FontDialog1.Execute then memo1.Font.Assign(FontDialog1.Font);
end;
Для события OnClick пункта главного меню «Выравнивание текста →по центру» напишите следующий программный код:
procedure TForm1.N10Click(Sender: TObject);
begin
memo1.Alignment:=taCenter;
end;
Для события OnClick пункта главного меню «Выравнивание текста →по левому краю» напишите следующий программный код:
procedure TForm1.N11Click(Sender: TObject);
begin
memo1.Alignment:=taLeftJustify;
end;
Для события OnClick пункта главного меню «Выравнивание текста →по правому краю» напишите следующий программный код:
procedure TForm1.N12Click(Sender: TObject);
begin
memo1.Alignment:=taRightJustify;
end;
Для настройки панели инструментов, выделите на форме компонент ToolBar1 и нажмите правую клавишу мыши. В появившемся контекстном меню выберите пункт – NewButton. Для появившейся на панели инструментов иконки (в данном случае – это иконка создания файла) настройте событие OnClick. Для этого в раскрывающемся списке события OnClick выберите процедуру N2Click, что соответствует открытию файла в главном меню. Аналогично создайте и настройте кнопки «Сохранить» и «Выход».
Примечание: Настроить панель инструментов можно и другим способом:
Для компонента ToolBar1 в инспекторе объектов установите в свойстве Menu значение Mainmenu1
Для каждой иконки на панели инструментов настройте свойство MenuItem, указав соответствующий пункт главного меню.
Далее добавьте на панель инструментов разделитель (пункт контекстного меню (New Separator) и добавьте иконку для настройки шрифта.