Форум: "Основная";
Текущий архив: 2002.08.19;
Скачать: [xml.tar.bz2];
ВнизПочему у меня исчезает Найти похожие ветки
← →
MikeFW (2002-08-06 12:47) [0]Уважаемые Мастера,
подскажите, пожалуйста, в следующей ситуации,
возникающей при воспроизведении ниже приведенного кода
ситуация: при первом нажатии на [+] у узла первого уровня,
построенного в TreeView2, [+] просто исчезает,
если же два раза щелкнуть мышкой на названии узла,
то второй уровень нормально строится и открывается,
и кстати, если уровень уже однжды открывался
и закрывался, то его повторно уже можно открыть нажав на [+] -
и все откроется нормально.
в чем тут моя ошибка, почему при нажатии на [+],
он исчезает, а не открывает второй уровень, как это
происходит при двойном клике мышкой на названии?
//---------------------------------------------------------------// Построение первого уровня дерева
//---------------------------------------------------------------
Procedure TForm1.TypeModeMark;
var
Node: TTreeNode;
begin
q1.Open;
while not q1.Eof do begin
Node := TreeView2.Items.Add(nil, q1.FieldByName("INVTYPEID").Value);
TreeView2.Items.AddChild(Node, "");
q1.Next;
end;
q1.Close;
End;
//---------------------------------------------------------------
// Построение второго уровня дерева
//---------------------------------------------------------------
procedure TForm1.TreeView3Expanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean);
var
NewNode: TTreeNode;
begin
Node.DeleteChildren;
q1.Open;
with q1 do
Locate("RECID", TreeView2.Selected.Text, [loCaseInsensitive]);
q2.Open;
while not q2.Eof do
begin
NewNode := TreeView2.Items.AddChild(TreeView2.Selected, q2.FieldByName("INVKINDID").Value);
TreeView2.Items.AddChild(NewNode, "");
q2.Next;
end;
q2.Close;
q1.Close;
end;
// SQL запрос q1
select * from TABLE1
// SQL запрос q2
// связан с q1 через DataSource1
select * from TABLE2 where RECID =:RECID
← →
KSergey (2002-08-06 14:04) [2]Не уверен, но сильно подозреваю, что необходимо AllowExpansion установить в True, если узел корректно заполнен дочерними данными, чего у Вас в коде не увидел.
← →
MikeFW (2002-08-06 14:30) [3]подскажите, пожалуйста, а в каком месте и как надо "AllowExpansion установить в True"?
← →
Polevi (2002-08-06 15:03) [4]procedure TForm1.TreeView3Expanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean);
var
NewNode: TTreeNode;
begin
Node.DeleteChildren;
AllowExpansion:=false;
q1.Open;
with q1 do
Locate("RECID", TreeView2.Selected.Text, [loCaseInsensitive]);
q2.Open;
while not q2.Eof do
begin
AllowExpansion:=true;
NewNode := TreeView2.Items.AddChild(TreeView2.Selected, q2.FieldByName("INVKINDID").Value);
TreeView2.Items.AddChild(NewNode, "");
q2.Next;
end;
q2.Close;
q1.Close;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.19;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c