Форум: "Начинающим";
Текущий архив: 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