Оценить:
 Рейтинг: 0

Программирование на Delphi 7

Год написания книги
2012
<< 1 ... 6 7 8 9 10 11 12 13 14 ... 20 >>
На страницу:
10 из 20
Настройки чтения
Размер шрифта
Высота строк
Поля

3.2. Установка на зоны нужных компонент

После создания формы с несколькими зонами наносят на каждую панель компоненты и устанавливают у них свойство «Align» в значение «alClient» (выравнивание по всей области). На «Panel1» нанесем компонент «Memo1», на «Panel3» компонент-дерево «TreeView1» (вкладка «Win32»), на «Panel2» семь кнопок и компонент статусной строки «StatusBar1» (вкладка «Win32»).

Компонент-дерево «TreeView1»

содержит в свойстве «Items» набор узлов и под узлов дерева. Содержимое дерева может задаваться через Инспектор объектов (и свойство «Items»), загружаться из файла или генерироваться программно.

Компонент статусной строки «StatusBar1»

содержит «Panels» набор секций статусной строки. По-умолчанию в этом компоненте нет секций, поэтому их нужно создавать либо программно, либо через Инспектор объектов и свойство «Panels». В данном примере нужно сделать через Инспектор объектов три секции статусной строки.

3.3. Процедуры многозонной программы

private

{ Private declarations }

td: TTime; nf: string;



procedure TForm1.FormCreate(Sender: TObject);

{ Создание формы }

begin

Form1.Position:=poScreenCenter;

TreeView1.ReadOnly:=true; Memo1.ReadOnly:=true;

Memo1.Clear;

td:=now; nf:=ExtractFilePath(Application.ExeName)+'tree.txt';

button7.Click;

end;

procedure TForm1.Button7Click(Sender: TObject);

{ Создаем программно дерево }

var tr, tr2: TTreeNode;

begin

with TreeView1.Items do begin

Clear; memo1.Clear;

tr:=Add(nil, 'Принтеры');

AddChild(tr,'матричные');

tr2:=AddChild(tr,'струйные');

AddChild(tr2,'цветные');

AddChild(tr2,'черно-белые');

AddChild(tr2,'фото-принтер');

tr:=Add(nil, 'Мониторы');

AddChild(tr,'LCD');

AddChild(tr,'аналоговые с ЭЛТ');

TreeView1.FullExpand;

end;

end;

procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

{ Обработка выбора пункта в дереве }

var k: integer;

begin

{ Проверяем, выбран ли пункт, или это раскрытие/скрытие узлов дерева }

if (htOnItem in TreeView1.GetHitTestInfoAt(X,Y)) then begin

{ Очищаем дерево }

memo1.Clear;

k:=TreeView1.Selections[0].AbsoluteIndex+1;

memo1.Lines.Add('Выбран пункт № '+inttostr(k));

memo1.Lines.Add('Содержимое пункта: '+TreeView1.Selections[0].Text);
<< 1 ... 6 7 8 9 10 11 12 13 14 ... 20 >>
На страницу:
10 из 20