Лабораторная работа

Лабораторная работа Создание treeview в Delphi

Работа добавлена на сайт bukvasha.net: 2015-10-29

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 22.11.2024





Форма:

Листинг
программы
:


unit Unit1;
interface
uses

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

  Dialogs, ComCtrls, StdCtrls, XPMan, SRColBtn, SRGrad, IniList, ImgList;
type

  TForm1 = class(TForm)

    Button1: TButton;

    Button2: TButton;

    Button3: TButton;

    Button4: TButton;

    Button5: TButton;

    Memo1: TMemo;

    TreeView1: TTreeView;

    XPManifest1: TXPManifest;

    Button7: TButton;

    Button8: TButton;

    Button9: TButton;

    Button6: TButton;

    Button10: TButton;

    SRGradient1: TSRGradient;

    ImageList1: TImageList;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure Button6Click(Sender: TObject);

    procedure Button7Click(Sender: TObject);

    procedure Button8Click(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure FormShow(Sender: TObject);

    procedure TreeView1Click(Sender: TObject);

    procedure Button9Click(Sender: TObject);

    procedure Button10Click(Sender: TObject);

  

  private

    { Private declarations }

  public

    { Public declarations }

  end;
var

  Form1: TForm1;

  f:TextFile; s,c:String; i:integer;

implementation
uses Unit2;
{$R *.dfm}
//кнопка «Добавить элемент»

procedure TForm1.Button1Click(Sender: TObject);

var captionStr:string;

NewNode:TTreeNode;

Begin

//обнуляем строку, которая будет использоваться для хранения имени будущего элемента //дерева

CaptionStr:='';

//выводим на экран окно ввода. Если окно было закрыто не кнопкой
OK, то происходит //выход из процедуры


if not InputQuery('Добавить элемент', 'Введите заголовок элемента', CaptionStr) then exit;


//добавляем новый элемент в наше дерево

NewNode:=Treeview1.Items.Add(Treeview1.Selected, CaptionStr);

//если компонент не является верхним в дереве, то изменяем значение
ImageIndex //созданного нами элемента на 1 (по умолчанию это значение 0)


if newnode.Parent<>nil then newnode.ImageIndex:=1;

end;
//кнопка
«Удалить
»


 procedure TForm1.Button2Click(Sender: TObject);

begin

//проверяю есть ли выделенный элемент в дереве

if treeview1.Selected<>nil then

begin

//если да, то выводим на экран сообщение

if MessageDlg('Вы действительно хотите удалить запись?', mtWarning,[mbYes,mbNo],0)=mrYes then

//удаляем элемент дерева

treeview1.items.delete(treeview1.selected);

end;

//очищаем
memo1.


memo1.Text:='';

end;

 

//кнопка «Выход»

procedure TForm1.Button3Click(Sender: TObject);

begin

//выход из программы

close;

end;
//кнопка «Сохранить в файл»

procedure TForm1.Button4Click(Sender: TObject);

begin

//сохраняем изменения в файл
tree.
dat


TreeView1.SaveToFile(ExtractFilePath(Application.ExeName)+'tree.dat');

end;
//кнопка «Загрузить из файла»

procedure TForm1.Button5Click(Sender: TObject);

begin

//если файл с указанным именем существует, то загружаем его

if FileExists(ExtractFilePath(Application.ExeName)+'tree.dat') then

TreeView1.LoadFromFile(ExtractFilePath(Application.ExeName)+'tree.dat');

end;
//кнопка «Изменить заголовок»

procedure TForm1.Button6Click(Sender: TObject);

var captionStr:string;

begin

CaptionStr:='';

if not InputQuery('Изменение заголовка', 'Введите заголовок элемента', CaptionStr) then exit;

//чтобы изменить имя надо изменить свойство
Text для выделенного элемента


treeview1.Selected.Text:=CaptionStr;

end;
//кнопка «О программе»

procedure TForm1.Button7Click(Sender: TObject);

begin

//выводим новое окно с сообщением о создателе программы

ShowMessage('Программу выполнила студентка гр. ВТиПО-42р.'+#13+'Ахметова Индира'+#13+'2010 год');

end;
//кнопка «Добавить подэлемент»

//здесь код практически такой же, что и для кнопки «Добавить элемент»

procedure TForm1.Button8Click(Sender: TObject);

var captionStr:string;

NewNode:TTreeNode;

begin

CaptionStr:='';

if not InputQuery('Добавить подэлемент', 'Введите заголовок подэлемента', CaptionStr) then exit;

//разница лишь в том, что при добавлении нового элемента мы используем метод //
AddChild,
т.е. добавляем дочерний элемент


NewNode:=Treeview1.Items.AddChild(Treeview1.Selected, CaptionStr);

if newnode.Parent<>nil then newnode.ImageIndex:=1;

end;
//при закрытии программы сделаем возможность сохранения данных дерева

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

begin

treeview1.SaveToFile(ExtractFilePath(Application.ExeName)+'tree.dat');

end;
//при открытии программы сделаем возможность загрузки данных из дерева

procedure TForm1.FormShow(Sender: TObject);

begin

if FileExists(ExtractFilePath(Application.ExeName)+'tree.dat') then

TreeView1.LoadFromFile(ExtractFilePath(Application.ExeName)+'tree.dat');

end;
//при нажатии на элемент дерева

procedure TForm1.TreeView1Click(Sender: TObject);

begin

 memo1.Clear;

//если файл существует, то данные добавляются в файл

 if FileExists(IntToStr(TreeView1.Selected.AbsoluteIndex)) then

 begin

 AssignFile(f,inttostr(treeview1.Selected.AbsoluteIndex));

 //открыть файл для чтения

 reset(f);

 while not EOF(f) do

 Begin

//прочитать строку из файла

 readln (f,s);

 memo1.Lines.Add(s)end;

 closefile(f) end else

//иначе, если файл не существует, то создаем новый

 begin

 memo1.Clear;

 AssignFile(f,IntToStr(TreeView1.Selected.AbsoluteIndex));

 Rewrite(f);

 reset(f);

 while not EOF(f) do

 begin

 readln (f,s);

 memo1.Lines.Add(s)end ;

 closefile(f) end;end;
//кнопка «Добавить описание»

procedure TForm1.Button9Click(Sender: TObject);

begin

memo1.SetFocus;

//в
memo можно редактировать данные (информацию)


Memo1.ReadOnly:=false;

end;
//кнопка «Сохранить описание»

//сохраняем введенные в
memoданные (информацию) в файл
tree.
dat


procedure TForm1.Button10Click(Sender: TObject);

begin

AssignFile(f,inttostr(treeview1.Selected.AbsoluteIndex));

rewrite(f);

for i:=0 to memo1.Lines.Count do

  writeln(f, memo1.lines[i]); //записываем текст в него из МЕМО

  closefile(f); //и закрываем

TreeView1.SaveToFile('tree.dat');

//
memo доступен только для чтения


Memo1.ReadOnly:=true;

end;
end.

1. Реферат на тему Camelot The Archetypal Environment Essay Research Paper
2. Реферат на тему Once More To The Lake Essay Research
3. Реферат Операция на острове Анжуан
4. Реферат Способы и правила разрешения конфликтов
5. Реферат Ислам в Грузии
6. Реферат Источники административного права 7
7. Курсовая на тему Организация рекламно информационной деятельности по сбыту товаров
8. Реферат на тему Gambling In Niagara Falls Ny Essay Research
9. Реферат на тему Something Made A Difference In My Life
10. Реферат Виды, типы и функции общения