![]() |
|
#1
|
||||
|
||||
![]() Как можно получить индекс самого первого узла где находиться выделенный узел
Допустим Русский -->Максимальное число CMP MaxID: ----> Текст: 1 ----> Текст: 2 ----> Текст: 3 Английский ... У меня выделен узел Текст: 3 надо получить индекс Русский тоесть нужно получить Index = 0 но как это сделать программно Английский это уже будет Index = 1 Есть функция |
#2
|
|||
|
|||
![]() Цитата:
Код:
function GetTopNodeIndex(ASelected : TTreeNode) : Integer var Node : TTreeNode; begin Node := ASelected; If Node = Nil Then Result := -1 Else Begin While Node.Parent <> Nil Do Node := Node.Parent; Result := Node.Index; End; end; |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
AlexandrV (20.08.2013)
|
#3
|
||||
|
||||
![]() Код:
procedure TMain_Application.BTN4Click(Sender: TObject); var i:integer; begin TRV1.SetFocus; If Length(ED3.Text) >0 then begin TexIni:=TIniFile.Create(ExtractFileDir(Application.ExeName)+'\Редактор Libx\Text.ini'); For i := 0 to TRV1.Items.Count-1 do begin If Pos(TRV1.Items.Item[i].Text, GetChangeLang('RUS-->', name+'-->'+TRV1.Name+'-->Items-->Text1'))=0 then begin TexIni.WriteString('-->Libx-->'+TabControl1.Tabs.Strings[TabControl1.tabIndex]+'-->'+inttostr(i)+'-->'+GetChangeLang('RUS-->',name+'-->'+TRV1.Name+'-->Items-->Text4')+' '+Ed3.Text, Name+'-->'+RTFB1.Name+'-->Text<--Lines['+IntToStr(TRV1.Selected.AbsoluteIndex)+']','MaxID:'+ED3.Text); TRV1.Items.AddChild(TRV1.Items.Item[i],GetChangeLang('RUS-->', name+'-->'+TRV1.Name+'-->Items-->Text1')+' '+Ed3.Text); end; end; TRV1.FullExpand; Ed3.Text:=''; TexIni.Free; end; end; В TreeView1 он мне узлы добавляет таким образом Русский --->Максимальное число CMP MaxID: 10 ------>Максимальное число CMP MaxID: 10 Английский а надо так Русский --->Максимальное число CMP MaxID: 10 Английский --->Максимальное число CMP MaxID: 10 Такто проблемы нет сделать задом на перед но надо сохранить Absoluteindex в секции узла который добавляешь тоесть если добавляешь в узел русский то он должен в секцию записть абсолютный индекс узла русский чтобы потом этот текст можно было считать Можете помочь как сделать переменная i и должна содержать этот абсолютный index |