Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

Ещё раз про TreeView   Найти похожие ветки 

 
DelphiNew   (2004-07-13 09:59) [0]

Подскажите как можно перейти к предыдущему элементу верхнего уровня?


 
Ega23 ©   (2004-07-13 10:04) [1]

Вот кусок из проета старого выдрал, может поможет.
Здесь tvSets:TTreeView.

function TFMain.FindNearest(const CurrentIndex:Integer; IsUp:Boolean):Integer;
begin
Result:=CurrentIndex;
if IsUp then
 begin // движение по TreeView вверх
  if (tvSets.Items[CurrentIndex].Text=tvNodeCaps[6]) or
     (tvSets.Items[CurrentIndex].Text=tvNodeCaps[11]) then
   tvSets.Selected:=tvSets.Items[CurrentIndex-1];
  if (tvSets.Items[CurrentIndex].Text=tvNodeCaps[0]) then
     tvSets.Selected:=tvSets.Items[DefaultNodeIndex];
 end
else
 begin // движение по TreeView ввниз
  if (tvSets.Items[CurrentIndex].Text=tvNodeCaps[6]) or
     (tvSets.Items[CurrentIndex].Text=tvNodeCaps[11]) then
   tvSets.Selected:=tvSets.Items[CurrentIndex+1];
  if (tvSets.Items[CurrentIndex].Text=tvNodeCaps[0]) then
     tvSets.Selected:=tvSets.Items[DefaultNodeIndex];
 end;
tvSets.OnClick(nil);
end;


 
Ega23 ©   (2004-07-13 10:09) [2]

Мда, сейчас на код этот посмотрел...
Всё что тебе нужно, это
tvSets.Selected:=tvSets.Items[CurrentIndex-1];
или
tvSets.Selected:=tvSets.Items[CurrentIndex+1];

Ну, конечно, проверять, чтобы было 0<=Твой_Индекс<tvSets.Items.Count


 
Семен Сорокин ©   (2004-07-13 10:10) [3]

TTreeNode.Parent
а еще есть у него св-во Level


 
Семен Сорокин ©   (2004-07-13 10:12) [4]

и куча методов:
getFirstChild
GetLastChild
GetNext
GetNextChild
getNextSibling
GetNextVisible
GetPrev
GetPrevChild
getPrevSibling
GetPrevVisible
подробнее см. в справке (F1)


 
DelphiNew   (2004-07-13 11:10) [5]

Спасибо


 
DelphiNew   (2004-07-13 11:10) [6]

Спасибо за помощь



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

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
1-1089388869
Paladin
2004-07-09 20:01
2004.07.25
Аналог функции Add Folder из WinAmp a


6-1085635353
ORMADA
2004-05-27 09:22
2004.07.25
Indy


1-1089364577
hgd
2004-07-09 13:16
2004.07.25
Толщина линии


3-1088746612
TchertenOk
2004-07-02 09:36
2004.07.25
Как сохранить данные


1-1089074956
CyBeR
2004-07-06 04:49
2004.07.25
Переход на формы по закладкам