Автор работы: Пользователь скрыл имя, 05 Декабря 2013 в 10:56, курсовая работа
Delphi (Дельфи) — Среда программирования, использующая язык Object Pascal, разработанный фирмой Borland и изначально реализованный в её пакете Borland Delphi, от которого и получил в 2003 году своё нынешнее название. По сути, является наследником языка Pascal с объектно-ориентированными расширениями. Свою историю язык Object Pascal ведет с первых Turbo Pascal `ей разработанных Николасом Виртом.
пиктограмму.
Стандартный набор пиктограмм поставляется в дистрибутиве Delphi и находится в папке Buttons по адресу C:\Program Files\Common Files\Borland Shared\Images. Правда, пиктограммы представлены в сдвоенном формате - для активного и неактивного состояния кнопки или пункта меню. Удобство применения компонента ImageList состоит в том, что он умеет разделять стандартные пиктограммы на две. Ненужную затем можно удалить, а оставшуюся сохранить для использования в других программах. Обычно это цветная пиктограмма для активного состояния, так как неактивная кнопка или меню умеют отображать свои пиктограммы в оттенках серого.
4.2 Memo
В некоторых случаях для ввода массива можно использовать компонент Memo. Компонент Memo позволяет вводить текст, состоящий из достаточно большого количества строк, поэтому его удобно использовать для ввода символьного массива. Компонент Memo добавляется в форму обычным образом. Значок компонента находится на вкладке Standard.
Свойства компонента Memo
Свойство |
Определяет |
Name |
Имя компонента. Используется в программе
для доступа к свойствам |
Text |
Текст, находящийся в поле Memo. Рассматривается как единое целое |
Lines |
Текст, находящийся в поле Memo. Рассматривается как совокупность строк. Доступ к строке осуществляется по номеру |
Lines .Count |
Количество строк текста в поле Memo |
Left |
Расстояние от левой границы поля до левой границы формы |
Top |
Расстояние от верхней границы поля до верхней границы формы |
Height |
Высоту поля |
Width |
Ширину поля |
Font |
Шрифт, используемый для отображения вводимого текста |
ParentFont |
Признак наследования свойств шрифта родительской формы |
4.3 SaveDialog и OpenDialog
На вкладке палитры компонентов Dialogs находятся компонент Delphi OpenDialog и компонент Delphi SaveDialog. Все Delphi диалоги, находящиеся на этой вкладке, в том числе и Delphi диалоги выбора файла, не визуальные, т.е. при переносе их на Форму в работающей программе их не видно, они видны только на этапе конструирования. Компонент Delphi OpenDialog позволяет открыть в нашей программе стандартное Windows-окно диалога открытия файла, компонент Delphi SaveDialog - окно диалога сохранения.
Delphi диалоги
выбора файла сами по себе
ничего не делают, а только
предоставляют настройки,
4.4 FontDialog
Компонент FontDialog вызывает диалоговое окно выбора атрибутов шрифта. В нем пользователь может выбрать имя шрифта, его стиль (начертание), размер и другие атрибуты.
Основное свойство компонента — Font типа TFont, в котором вы можете задать при желании начальные установки атрибутов шрифта и в котором вы можете прочесть значения атрибутов, выбранные пользователем в процессе диалога.
Свойства MaxFontSize и MinFontSize устанавливают ограничения на максимальный и минимальный размеры шрифта. Если значения этих свойств равны 0 (по умолчанию), то никакие ограничения на размер не накладываются. Если же значения свойств заданы (обычно это целесообразно делать исходя из размеров компонента приложения, для которого выбирается шрифт), то в списке "Размер" диалогового окна появляются только размеры, укладывающиеся в заданный диапазон. При попытке пользователя задать недопустимый размер ему будет выдано предупреждение вида «Размер должен лежать в интервале ...» и выбор пользователя отменится. Свойства MaxFontSize и MinFontSize действуют только при включенной опции fdLimitSize.
Свойство Device определяет, из какого списка возможных шрифтов будет предложен выбор в диалоговом окне: fdScreen — из списка экрана (по умолчанию), fdPrinter — из списка принтера, fdBoth — из обоих.
Свойство Options содержит множество опций:
Свойство |
Описание |
fdAnsiOnly |
Отображать только множество шрифтов символов Windows, не отображать шрифтов со специальными символами |
fdApplyButton |
Отображать в диалоге кнопку "Применить" независимо от того, предусмотрен ли обработчик события OnApply |
fdEffects |
Отображать в диалоге |
fdFixedPitchOnly |
Отображать только шрифты с постоянной шириной символов |
fdForceFontExist |
Позволять пользователю выбирать шрифты только из списка, запрещать ему вводить другие имена |
fdLimitSize |
Разрешить использовать свойства MaxFontSize и MinFontSize, ограничивающие размеры шрифта |
fdNoFaceSel |
Открывать диалоговое окно без предварительно установленного имени шрифта |
fdNoOEMFonts |
Удалять из списка шрифтов шрифты OEM |
fdScalableOnly |
Отображать только масштабируемые шрифты, удалять из списка не масштабируемые (шрифты bitmap) |
fdNoSimulations |
Отображать только шрифты и их начертания, напрямую поддерживаемые файлами, не отображая шрифты, в которых жирный стиль и курсив синтезируется |
fdNoStyleSel |
Открывать диалоговое окно без предварительно установленного начертания шрифта |
fdNoVectorFonts |
Удалять из списка векторные шрифты (типа Roman или Script для Windows 1.0) |
fdShowHelp |
Отображать в диалоговом окне кнопку "Справка" |
fdTrueTypeOnly |
Предлагать в списке только шрифты TrueType |
fdWysiwyg |
Предлагать в списке только шрифты, доступные и для экрана, и для принтера, удаляя из него аппаратно зависимые шрифты |
По умолчанию все эти опции, кроме fdEffects, отключены.
Если установить опцию fdApplyButton, то при нажатии пользователем кнопки "Применить" возникает событие OnApply, в обработчике которого вы можете написать код, который применит выбранные пользователем атрибуты, не закрывая диалогового окна.
4.5 ListBox
Компонент ListBox это компонент, служащий для хранения и обработки текстовой информации. Каждая строкаListBox хранит строку данных в формате String.
Компонент ListBox - это массив строк. ListBox может загружать данные с диска, и сохранять информацию в файл. Также ListBox может сортировать строки. Доступ к строкам предоставляет свойство Items этого компонента.
Методы добавления строк в компонентListBox:
Пользователь может выделить строку, щёлкнув по ней мышкой. Номер выделенной строки возвращает свойство компонента ListBox.ItemIndex.
К сожалению, компонент не обладает возможностью добавлять только уникальные данные. Один и тот же текст запишется несколько раз. Для реализации этой возможности приходится дополнительно применять не визуальный аналог компонента ListBox - объект StringList, обладающий такой возможностью.
Компонент ListBox автоматически добавит полосу прокрутки, если количество строк не помещается по высоте компонента. Высота каждой строки равна ItemHeight. Если нужно чтобы при добавлении новой
строки полоса прокрутки точно не возникла, этот размер нужно добавить к высоте компонента. Но делать это нужно только начиная с определённого количества строк.
6 Заключение
В результате выполнения курсовой работы в среде программирования Delphi 7 была сделана программа под названием „Текстовый редактор”.
Данный проект может с большим успехом использоваться на уроках информатики, в школе, в качестве примера программы, разработанной средствами Delphi 7.
Программа написана для удобной и быстройработы с текстом и его редактированием. Обеспечивает удобный интерфейс.
7 список используемой литературы
8 Приложение
Приложение А
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Menus, Unit2;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
Memo1: TMemo;
FontDialog1: TFontDialog;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
N4: TMenuItem;
N3: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N17: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
procedureN6Click(Sender: TObject);
procedureN11Click(Sender: TObject);
procedureN19Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedureN14Click(Sender: TObject);
procedureN15Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedureN7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure N20Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const
Title: string = 'Текстовыйредактор';
NewFileName: string = 'Безымянныйдокумент.txt';
var
Form1: TForm1;
FileName: string;
implementation
uses Unit3, Unit4;
{$R *.dfm}
procedure TForm1.N6Click(Sender: TObject);
begin
if ( FontDialog1.Execute ) then
begin
Memo1.Font.Size := FontDialog1.Font.Size;
Memo1.Font.Style := FontDialog1.Font.Style;
Memo1.Font.Name := FontDialog1.Font.Name;
end;
end;
procedure TForm1.N11Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.N19Click(Sender: TObject);
begin
Memo1.SelectAll;
end;
procedure TForm1.N12Click(Sender: TObject);
begin
Memo1.Undo;
end;
procedure TForm1.N14Click(Sender: TObject);
begin
Memo1.CutToClipboard;
end;
procedure TForm1.N15Click(Sender: TObject);
begin
Memo1.CopyToClipboard;
end;
procedure TForm1.N16Click(Sender: TObject);
begin
Memo1.PasteFromClipboard;
end;
procedure TForm1.N7Click(Sender: TObject);
begin
if ( OpenDialog1.Execute ) then
begin
Memo1.Lines.LoadFromFile( OpenDialog1.FileName );
FileName := OpenDialog1.FileName;
Form1.Caption := FileName + ' :: ' + Title;
SaveDialog1.FileName := FileName;
end;
end;
procedure TForm1.N8Click(Sender: TObject);
begin
if ( SaveDialog1.Execute ) then
begin
Memo1.Lines.SaveToFile( SaveDialog1.FileName );
FileName := SaveDialog1.FileName;
Form1.Caption := FileName + ' :: ' + Title;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.Caption := NewFileName + ' :: ' + Title;
SaveDialog1.FileName := NewFileName;
end;
procedure TForm1.N5Click(Sender: TObject);
begin
Form2.ShowModal;
end;
procedure TForm1.N17Click(Sender: TObject);
begin
form3.show;
end;
procedure TForm1.N20Click(Sender: TObject);
begin
Form4.show;
end;
end.
Окно «Справка»
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,