Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Компоненты и классы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 21.01.2008, 06:33
Аватар для Vit
Vit Vit вне форума
Прохожий
 
Регистрация: 02.07.2007
Сообщения: 20
Репутация: 10
По умолчанию Кто объяснит происходящее?

Помогите пожалуйста разобраться.
TreeView загружается из файла и сохраняется в файл.
Вот код.

procedure TForm1.N10Click(Sender: TObject);
var
k:TTreeNode;
begin
F := TFileStream.Create('C:\GLB\izd\TV.txt', fmOpenRead or fmShareDenyWrite);
try
F.ReadComponent(TreeView1);
finally
F.Free;
end;
TreeView1.Selected := GetNodeInPath(PChar(Edit1.Text+'\'+Edit2.Text), '\', TreeView1);
k:=TreeView1.Selected;
TreeView1.Items.AddChild(k,'ТЗ.dwg');
k.Expanded:=true;
TreeView1.Selected := GetNodeInPath(PChar(Edit1.Text+'\'+Edit2.Text+'\ТЗ .dwg'), '\', TreeView1);
TreeView1.Selected.ImageIndex:=1;
F := TFileStream.Create('C:\GLB\izd\TV.txt', fmCreate or fmShareCompat);
try
F.WriteComponent(TreeView1);
finally
F.Free;
end;
end;

Когда файл загружается запись как и положено имеет иконку ImageIndex:=1, но если эту запись выделить появляется иконка с ImageIndex:=0. При снятии выделения иконка снова меняется наImageIndex:=1. Объясните пожалуйста почему это происходит и как сделать, чтобы иконка не менялась при выделении.

И еще один вопрос: как можно полностью свернуть TreeView?

Последний раз редактировалось Vit, 21.01.2008 в 08:55.
Ответить с цитированием
  #2  
Старый 24.01.2008, 07:46
Аватар для Vit
Vit Vit вне форума
Прохожий
 
Регистрация: 02.07.2007
Сообщения: 20
Репутация: 10
По умолчанию

Сам нашел вариант, может несколько корявый, но вполне рабочий.
procedure TForm1.N10Click(Sender: TObject);
var
k:TTreeNode;
begin
if TreeView1.Visible=true then
TreeView1.Visible:=false;
F := TFileStream.Create('C:\GLB\izd\TV.txt', fmOpenRead or fmShareDenyWrite);
try
F.ReadComponent(TreeView1);
finally
F.Free;
end;
TreeView1.Visible:=true;
TreeView1.Selected := GetNodeInPath(PChar(DBEdit1.Text+'\'+DBEdit2.Text) , '\', TreeView1);
k:=TreeView1.Selected;
TreeView1.Items.AddChild(k,'ТЗ.dwg');
k.Expanded:=true;
TreeView1.Selected := GetNodeInPath(PChar(DBEdit1.Text+'\'+DBEdit2.Text+ '\ТЗ.dwg'), '\', TreeView1);
TreeView1.Selected.SelectedIndex:=1;
Button2.Click;
F := TFileStream.Create('C:\GLB\izd\TV.txt', fmCreate or fmShareCompat);
try
F.WriteComponent(TreeView1);
finally
F.Free;
end;
TreeView1.Visible:=false;
TreeView1.Visible:=true;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if TreeView1.Selected.SelectedIndex=1 then
TreeView1.Selected.ImageIndex:=1;
end;

end.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:33.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter