Презентация на тему "Создание простейшего текстового редактора в Delphi"

Ваша оценка презентации
Оцените презентацию по шкале от 1 до 5 баллов
  • 1
  • 2
  • 3
  • 4
  • 5

Рецензии

Добавить свою рецензию

Аннотация к презентации

Презентация на тему "Создание простейшего текстового редактора в DelphI" представляет собой мультимедийное обеспечение для проведения урока программирования. Материал является поэтапной инструкцией алгоритма написания скрипта простейшего редактора, включая создание стандартного набора функций меню. Инструкция дополнена скриншотами, что способствует лучшему пониманию теоретической информации, ее наглядности.

Краткое содержание

  1. Необходимые компоненты
  2. Меню "Файл"
  3. Реализация переноса по словам
  4. Реализация функции "Сохранить как"
  5. Реализация функции "Открыть"
  6. Реализация функции "Создать"
  7. Использованные источники

Содержание

  • Слайд 1

     

    Создание простейшего
    текстового редактора
    в Delphi
    Преподаватель информатики
    ГБОУ СПО «Сибайский педагогический колледж»
    Гаврилова Екатерина Федоровна

  • Слайд 2

    Необходимые компоненты

    TMemo и TMainMenu
    Установим
    - свойство Align в alClient - компонент растянется на все свободное пространство формы.
    свойство ScrollBars в ssBoth, а WordWrap в False.
    уберем введенный в Memo1 текст по умолчанию, удалив этот текст из свойства Lines.

  • Слайд 3

    Меню "Файл"

    Щелкнем по MainMenu1 два раза - появится окно.
    Теперь создадим меню "Файл". В нем элементы: "Создать", "Открыть", "Сохранить", "Сохранить как...", разделительную полоску (символ "-") и "Выход"
    Установим горячие клавиши как показанно на рис 1. Горячие клавиши устанавливаются в свойстве ShortCut
    Рис. 1 - Меню "Файл"

  • Слайд 4

     

    Аналогично создаем меню "Правка":
    Рис. 2 - Меню "Правка"
    Аналогично создаем меню "Формат":
    Рис. 3 - Меню "Формат"

  • Слайд 5

     

    Напишем код, который будет выполняться при выборе чего-либо из меню. Щелкнем по меню "Файл", а там выберем "Выход".
    Рис. 4 - Создание события onClick
    Close;
    После нажатия по меню "Выход" появляется окно редактора кода с уже готовой процедурой. Пишем:

  • Слайд 6

    Реализация переноса по словам

    В меню "Формат" выберем "Перенос по словам":
    procedure TForm1.N14Click(Sender: TObject);
    begin
    If Memo1.WordWrap then
    begin
    Memo1.WordWrap:=false;
    Memo1.ScrollBars:=ssBoth;
    N14.Checked:=False;
    end
    else
    begin
    Memo1.WordWrap:=True;
    Memo1.ScrollBars:=ssVertical;
    N14.Checked:=True;
    end;
    end;

  • Слайд 7

    Реализация функции "Сохранить как"

    Воспользуемся компонентом TSaveDialog
    на вкладке Dialogs. Нам нужно *.txt, т.е. текстовые документы. Чтобы это сделать нужно найти свойство Filter и нажать на кнопку
    Появится окно. Заполните его как показанно на рис. 5.
    Рис. 5 - Редактор фильтра
    измените свойство DefaultExt на *.txt. Это расширение которое будет добавляться к файлу.

  • Слайд 8

     

    Создадим процедуру сохранения файла. Напишем этот код сразу после {$R *.dfm}.
    Procedure SaveAs;
    begin
    If Form1.SaveDialog1.Execute then
    begin
    Form1.Memo1.Lines.SaveToFile(Form1.SaveDialog1.FileName);
    FileWork:=Form1.SaveDialog1.FileName;
    end;
    end;
    Далее выберем в меню "Файл" —> "Сохранить как...".
    SaveAs;

  • Слайд 9

     

    Запишите в тетрадь как работает эта процедура? Самостоятельно.

  • Слайд 10

     

    В переменной FileWork будет храниться путь к файлу с которым работает пользователь. Это нужно для реализации функции "Файл" —> "Сохранить". Не забудьте ее объявить в разделе Var перед implementation.
    var
    Form1: TForm1;
    FileWork: String;
    Реализация функции "Сохранить"
    Выберем "Файл" —>"Сохранить". И пишем:
    If FileWork='' then SaveAs else Memo1.Lines.SaveToFile(FileWork);

  • Слайд 11

    Реализация функции "Открыть"

    Помимо TSaveDialog существует TOpenDialog
    этот компонент предназначен для открытия файлов.
    Выложите этот компонент на форму и свойство Filter измените так же как у SaveDialog1.
    Вообще компоненты TSaveDialog и TOpenDialog очень похожи. Диалог открытия вызывается так же — функцией Execute, которая возвращает True если пользователь желает открыть файл.
    Жмем "Файл" —> "Открыть". Пишем:
    if OpenDialog1.Execute then
    begin
    Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
    FileWork:=OpenDialog1.FileName;
    end;

  • Слайд 12

    Реализация функции "Создать"

    Жмем "Файл" —> "Создать". Пишем:
    FileWork:='';
    Memo1.Clear;
    Реализация функций в меню "Правка"
    По клику на меню "Вырезать":
    Memo1.CutToClipboard;
    По клику на меню "Копировать":
    Memo1.CopyToClipboard;
    По клику на меню "Вставить":
    Memo1.PasteFromClipboard;

  • Слайд 13

     

    Реализация функций в меню "Шрифт..."
    Нам понадобится еще один компонент - TFontDialog
    Создаем событие по клику по меню "Шрифт...".
    if FontDialog1.Execute then Memo1.Font:=FontDialog1.Font
    Завершаем...
    Изменим заголовок окна: в свойстве Caption напишите "Блокнот". Свойство Position измените на poScreenCenter для того, чтобы форма появлялась по центру экрана.
    Ну и напоследок добавим модуль XPMan в список модулей (секция uses):

  • Слайд 14

     

    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, Menus, StdCtrls, XPMan;
    Этот модуль подключает XMManifest к приложению, т.е. если у Вас установленна XP, то все компоненты приобретают XP-шный вид, а если Vista - то становятся стиля Висты. Можете поэкспериментировать.

  • Слайд 15

     

    Реализуйте программу в среде программирования Delphi

  • Слайд 16

    Использованные источники

    Валеева, Ю.А. Объектно-ориентированное программирование в среде Delphi [Текст] / Ю.А. Валеева. - Новокузнецк, 2003.
    Фаронов В.В. Delphi. Программирование на языке высокого уровня: учебник для вузов–СПб: Питер, 2006.–640с.

Посмотреть все слайды

Конспект

Гаврилова Екатерина Федоровна

Преподаватель информатики

ГБОУ СПО «Сибайский педагогический колледж», г.Сибай

Группа: 5Б

Тема урока: Создание простейшего текстового редактора в Delphi

Тема: «Создание простейшего т...

Гаврилова Екатерина Федоровна

Преподаватель информатики

ГБОУ СПО «Сибайский педагогический колледж», г.Сибай

Группа: 5Б

Тема урока: Создание простейшего текстового редактора в Delphi

Тема: «Создание простейшего текстового редактора в Delphi»

Цель: научить составлять программу Текстовый редактор, используя компоненты TMemo, и TMainMenu ;

Задачи: �- повторить компоненты TMemo и TMainMenu; �- прививать любознательность, интерес к программированию;�- развивать логическое мышление, память, речь, внимательность�Оборудование: компьютер, презентация, раздаточный материал;

План:

Организационный момент;

Проверка пройденного материала;

Практическая часть;

Закрепление изученного материала;

Задание на дом

Тип урока: практический

Ход урока

I Орг.момент

-приветствие, проверка отсутствующих

II. Проверка пройденного материала

что такое компонент?

как выбрать и разместить компоненты на форме?

какие общие свойства компонентов вы знаете?

как можно поменять свойства компонента (например, поменять размер или цвет компонента)?

Практическая часть;

Сегодня мы с вами создадим программу Текстовый редактор.( Слайд 1) (слайд 2.)

Выложим на форму TMemo, и TMainMenu. Установим свойство Align в alClient для того, чтобы компонент растянулся на все свободное пространство формы. Установим свойство ScrollBars в ssBoth, а WordWrap в False. И уберем введенный в Memo1 текст поумолчанию, удалив этот текст из свойства Lines. ( Слайд 3)

Щелкнем по MainMenu1 два раза - появится окно. Теперь создадим меню "Файл". В нем элементы: "Создать", "Открыть", "Сохранить", "Сохранить как...", разделительную полоску (символ "-") и "Выход"

Установим горячие клавиши как показанно на рис 1. Горячие клавиши устанавливаются в свойстве ShortCut

Рис. 1 - Меню "Файл"

Самостоятельно. (Слайд 4)

Аналогично создаем меню "Правка":

image1.png

Рис. 2 - Меню "Правка"

Аналогично создаем меню "Формат":

image2.png

Рис. 3 - Меню "Формат"

Итак, начнем. Окошко редактора меню нам больше не нужно - его можно закрыть. На нашей форме уже появилось меню. Оно выпадает при щелчке, в общем практически рабочее. (Слайд 5) Осталось только написать код, который будет выполняться при выборе чего-либо из меню. Щелкнем по меню "Файл", а там выберем "Выход".

image3.png

Рис. 4 - Создание события onClick

После нажатия по меню "Выход" появляется окно редактора кода с уже готовой процедурой. Пишем:

Close;

Обратите внимание, что Close и Form1.Close это одно и тоже. Т.к. форма является родителем то имя родителя можно опускать.

Теперь после выбора меню "Выход" программа закроется. (Слайд 6)

Реализация переноса по словам

В меню "Формат" выберем "Перенос по словам":

procedure TForm1.N14Click(Sender: TObject);

begin

If Memo1.WordWrap then

begin

Memo1.WordWrap:=false;

Memo1.ScrollBars:=ssBoth;

N14.Checked:=False;

end

else

begin

Memo1.WordWrap:=True;

Memo1.ScrollBars:=ssVertical;

N14.Checked:=True;

end;

end;

Разберемся что мы делаем: если уже установлен режим переноса по словам то мы убираем его и устанавливаем галочку на N14. И наоборот. (Слайд 7)

Реализация функции "Сохранить как..."

Нам понадобится диалоговое окно сохранения документа. Воспользуемся компонентом TSaveDialog image4.pngна вкладке Dialogs. Выложим его на форму. Установим фильтр, т.е. те файлы которые будет этот диалог отображать. Нам нужно *.txt, т.е. текстовые документы. Чтобы это сделать нужно найти свойство Filter и нажать на кнопку image5.png. Появится окно. Заполните его как показанно на рис. 5.

image6.png

Рис. 5 - Редактор фильтра

Теперь измените свойство DefaultExt на *.txt. Это расширение которое будет добавляться к файлу. (Слайд 8)

Создадим процедуру сохранения файла. Напишем этот код сразу после {$R *.dfm}.

Procedure SaveAs;

begin

If Form1.SaveDialog1.Execute then

begin

Form1.Memo1.Lines.SaveToFile(Form1.SaveDialog1.FileName);

FileWork:=Form1.SaveDialog1.FileName;

end;

end;

Далее выбераем в меню "Файл" —> "Сохранить как...". Там пишем:

SaveAs;

(Слайд 9) Что же тут делается и как все работает? Очень просто! Когда пользователь выберает пункт меню "Сохранить как..." то вызывается процедура SaveAs, которую мы уже написали. Теперь разберем процедуру SaveAs. Когда вызывается функция Execute у TSaveDialog то появляется диалог сохранения и если пользователь нажмет кнопку сохранить, то функция Executeвозвратит True иначе False. Если возвратится True то будет выполнена процедура SaveToFile, т.е. сохранение файла. В SaveDialog1.FileName хранится путь к файлу в который пользователь указывает в диалоге. (Слайд 10)

Введем глобальную переменную FileWork. В ней будет храниться путь к файлу с которым работает пользователь. Это нужно для реализации функции "Файл" —> "Сохранить". Не забудьте ее объявить в разделе Var перед implementation. Должно быть так:

var

Form1: TForm1;

FileWork: String;

Реализация функции "Сохранить"

Выбераем "Файл" —> "Сохранить". И пишем:

If FileWork='' then SaveAs else Memo1.Lines.SaveToFile(FileWork);

Если пользователь уже сохранял файл то в FileWork будет что-то храниться, в любом случае не "пустота". Если хранится '', т.е. ничего не хранится то вызываем SaveAs. Она как раз и покажет диалог сохранения. Если переменная FileWork не пустая, то сохраняем файл по тому пути который указан в FileWork. (Слайд 11)

Реализация функции "Открыть"

Помимо TSaveDialog существует TOpenDialog image7.png. И если Вы хоть малость знаете английский, то уже поняли бы, что этот компонент предназначен для открытия файлов.

Выложите этот компонент на форму и свойство Filter измените так же как у SaveDialog1.

Вообще компоненты TSaveDialog и TOpenDialog очень похожи. Диалог открытия вызывается так же — функцией Execute, которая возвращает True если пользователь желает открыть файл.

Жмем "Файл" —> "Открыть". Пишем:

if OpenDialog1.Execute then

begin

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

FileWork:=OpenDialog1.FileName;

end;

Запускаем программу F9 и пробуем. Если все делали правильно, то все должно работать. (Слайд 12)

Реализация функции "Создать"

"Файл" —> "Создать". Пишем:

FileWork:='';

Memo1.Clear;

первая строчка очищает FileWork, т.е. программа не будет знать о том что мы с каким-то файлом работали. Вторая строчка очищает Memo1.

Реализация функций в меню "Правка"

По клику на меню "Вырезать":

Memo1.CutToClipboard;

По клику на меню "Копировать":

Memo1.CopyToClipboard;

По клику на меню "Вставить":

Memo1.PasteFromClipboard;

(Слайд 13)

Реализация функций в меню "Шрифт..."

Нам понадобится еще один компонент - TFontDialog image8.png. Функция для вызова такая же как у TOpenDialog и TSaveDialog - Execute. Создаем событие по клику по меню "Шрифт...".

if FontDialog1.Execute then Memo1.Font:=FontDialog1.Font;

Если пользователь применил изменения, то свойству Font у Memo1 присваиваем выбранные пользователем настройки шрифта. Они хранятся в свойстве Font у FontDialog1.

Завершаем...

Основная часть программы написана. Осталось совсем немного. Нам нужно сделать активной форму, чтобы в инспекторе объектов появились ее свойства, но из-за Memo1 который растянут на всю форму не получается это сделать. Есть несколько вариантов. Можно просто выделить форму в Object TreeView. А можно выделить Memo1, затем зажать клавишу Shift и щелкнуть по Memo1 еще раз.

Итак, Вы активировали форму. Изменим заголовок окна: в свойстве Caption напишите "Блокнот". Свойство Position измените на poScreenCenter для того, чтобы форма появлялась по центру экрана.

Ну и напоследок добавим модуль XPMan в список модулей (секция uses). (Слайд 14)

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Menus, StdCtrls, XPMan;

Этот модуль подключает XMManifest к приложению, т.е. если у Вас установленна XP, то все компоненты приобретают XP-шный вид, а если Vista - то становятся стиля Висты, а не как в Win98 или Win2000. Можете поэкспериментировать. (Слайд 15)

Закрепление изученного материала;

- С какими компонентами вы сегодня работали?

- На каких вкладках они находятся?

- Как реализовать функции в меню "Правка"?

- Как реализовать функции в меню "Шрифт ?

Задание на дом

Записать основные команды создания программы в тетрадь

Приложение:

Текст программы:

Procedure SaveAs;

begin

If Form1.SaveDialog1.Execute then

begin

Form1.Memo1.Lines.SaveToFile(Form1.SaveDialog1.FileName);

FileWork:=Form1.SaveDialog1.FileName;

end;

end;

Procedure TForm1.N5Click(Sender: TObject);

begin

SaveAs;

end;

procedure TForm1.N3Click(Sender: TObject);

begin

if OpenDialog1.Execute then

begin

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

FileWork:=OpenDialog1.FileName;

end;

end;

procedure TForm1.N7Click(Sender: TObject);

begin

Close;

end;

procedure TForm1.N13Click(Sender: TObject);

begin

If Memo1.WordWrap then

begin

Memo1.WordWrap:=false;

Memo1.ScrollBars:=ssBoth;

N14.Checked:=False;

end

else

begin

Memo1.WordWrap:=True;

Memo1.ScrollBars:=ssVertical;

N14.Checked:=True;

end;

end;

procedure TForm1.N2Click(Sender: TObject);

begin

FileWork:='';

Memo1.Clear;

end;

procedure TForm1.N9Click(Sender: TObject);

begin

Memo1.CutToClipboard;

end;

procedure TForm1.N10Click(Sender: TObject);

begin

Memo1.CopyToClipboard;

end;

procedure TForm1.N11Click(Sender: TObject);

begin

Memo1.PasteFromClipboard;

end;

procedure TForm1.N14Click(Sender: TObject);

begin

if FontDialog1.Execute then Memo1.Font:=FontDialog1.Font;

end;

end.

Использованные источники:

Валеева, Ю.А. Объектно-ориентированное программирование в среде Delphi [Текст] / Ю.А. Валеева. - Новокузнецк, 2003.

Фаронов В.В. Delphi. Программирование на языке высокого уровня: учебник для вузов–СПб: Питер, 2006.–640с.

�PAGE � �PAGE �9�

Скачать конспект
Презентация будет доступна через 45 секунд