Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.09.26;
Скачать: [xml.tar.bz2];

Вниз

как сохранить дополнительные данные к узлам в treeview   Найти похожие ветки 

 
linuxoid   (2010-07-02 10:17) [0]

на форме имеется treeview со списком авто и два edita. в первом-страна-производитель, во втором-президент компании.
вопрос: где лучше сохранить вот эти данные (без БД)?

заранее благодарю.


 
Ega23 ©   (2010-07-02 10:30) [1]

Node.Data


 
linuxoid   (2010-07-02 10:32) [2]

как это реализовать?


 
12 ©   (2010-07-02 10:43) [3]

Rec = Record
   S : string;
 end;

 R : Rec;

 New(R);
 R.S := "Внутри";

    NewNode:=TreeView.Items.AddChildObject(CurentNode, "Для вида", R);


 
linuxoid   (2010-07-02 11:29) [4]

не получается чето. New(R)???


 
Ega23 ©   (2010-07-02 11:41) [5]


> не получается чето.


Это Windows, сынок.


 
12 ©   (2010-07-02 11:48) [6]

ну да, вернее так
PRec = ^Rec;
R : PRec;


 
Ega23 ©   (2010-07-02 11:52) [7]


> 12 ©   (02.07.10 10:43) [3]


Зачем так сложно? Создай стринглист, строки храни как Name-Value, а в Node.Data прописывай ItemIndex

Node.Data := Pointer(ItemIndex);

ItemIndex := Integer(Node.Data);

И всё.


 
linuxoid   (2010-07-02 12:08) [8]

теперь не могу понять с " R.S := "Внутри";"???

как его сохранить и отобразить?


 
linuxoid   (2010-07-02 12:24) [9]

опишу подробно на примере.

имеется две формы mainform и addforml.

mainform содержит treeview, edit1(марка авто), edit2(страна), edit3(президент) и button1.

addform содержит edit1(марка авто), edit2(страна), edit3(президент) и button1 по нажатию которого данные с едитов должны добавиться.

на mainform в treeview должны хранятся марки  авто по нажатии на них (treeview.onchange) в edit1 должен отобразится марка авто, в edit2-страна, edit3-президент (которые мы ранее добавили).

узлы treeview(марки авто) добавляю и сохраняю в файле "avto,trv".

вопрос: как сохранять данные (страна, президент) и отобразить их?


 
12 ©   (2010-07-02 12:29) [10]

type
PRec = ^Rec;
Rec = Record
  S : string;
end;

 TForm1 = class(TForm)
   TreeView1: TTreeView;
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
   procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
 R : PRec;
 TreeNode : TTreeNode;
 TreeNode2 : TTreeNode;
begin
New(R);
R.S := "Внутри";
TreeNode := TreeView1.Items.AddChildObject(nil,"asasas",R);
 New(R);
R.S := "Внутри2";
TreeNode2 := TreeView1.Items.AddChildObject(TreeNode,"sdsfsff",R);
end;

procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
 ShowMessage(Rec(Node.Data^).S);
end;


 
linuxoid   (2010-07-02 12:57) [11]

как теперь сохранить данные "R.S" ???

узлы я сохраняю в файле "tree.trv" для последующего открытия.


 
12 ©   (2010-07-02 13:52) [12]

> узлы я сохраняю в файле "tree.trv" для последующего открытия.


как ?


 
linuxoid   (2010-07-02 14:03) [13]

treeview1.SaveToFile("test.trv");


 
12 ©   (2010-07-02 14:26) [14]

обходить придется в ручную, или см.другую свою ветку :)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.09.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.003 c
15-1273835617
xayam
2010-05-14 15:13
2010.09.26
CrasyHouse


15-1277756991
Юрий
2010-06-29 00:29
2010.09.26
С днем рождения ! 29 июня 2010 вторник


2-1277964301
12
2010-07-01 10:05
2010.09.26
Работа с Excel/ Объясните, как понимать такую запись?


6-1218676192
piople
2008-08-14 05:09
2010.09.26
[ISAPI] Проблема ограничения длинны загружамемого контента


2-1277531521
_MiK_
2010-06-26 09:52
2010.09.26
Как исправить поле "счётчик"? (ADO + Access)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский