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

Вниз

Как сделать, чтобы TreeView прокручивался при таскании узлов?   Найти похожие ветки 

 
Ivan Pashkov   (2004-10-29 16:34) [0]

Есть TreeView, в котором узлы таскаются с места на место (DragMode=dmAutomatic). Проблема: когда тащится какой-то узел, невозможно его перетащить в область того же TreeView, которая в данный момент не помещается в видимой области. По идее TreeView должен прокручиваться в такой ситуации, а он, скотина, не прокручивается. Как сделать, чтобы прокручивался? Заранее большое спасибо!


 
MBo ©   (2004-10-29 16:39) [1]

в OnDragOver нужно следить за координатами и вовремя прокручивать


 
inic ©   (2004-10-29 16:45) [2]

Ivan Pashkov   (29.10.04 16:34)

Или вот такой грубоватый вариант


procedure TForm1.TreeView1DragOver(Sender, Source: TObject; X, Y: Integer;
 State: TDragState; var Accept: Boolean);
var t: TTreeNode;
begin
 if Y >= 0 then begin
   t := TreeView1.GetNodeAt(X, Y);
   if t <> nil then
     t.MakeVisible;
 end
 else begin
   t := TreeView1.GetNodeAt(X, 0);
   if t <> nil then
     if t.GetPrevVisible <> nil then
       t.GetPrevVisible.MakeVisible;
 end;
end;


 
Ivan Pashkov   (2004-10-29 18:12) [3]

Это работает, но очень грязно - мусор на экране остается. Если делать Invalidate или BeginUpdate/EndUpdate, то тогда мерцание сплошное...


 
Анонимщик ©   (2004-10-29 18:40) [4]

А я запустил свою старую программу - так в ней все прокручивается. Видимо, нужно смотреть на параметры внимательно.



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

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

Наверх




Память: 0.47 MB
Время: 0.1 c
14-1098522570
Agent13
2004-10-23 13:09
2004.11.14
Intel processor numbers


1-1098936553
Babay
2004-10-28 08:09
2004.11.14
Два вопроса по Д8


1-1098374169
Checist [root]
2004-10-21 19:56
2004.11.14
Управление FlashGet


1-1098967297
Chlavik
2004-10-28 16:41
2004.11.14
Надо после QueryInterface как то уничтожать полученый интерфейс ?


1-1098942518
NeyroSpace
2004-10-28 09:48
2004.11.14
Как отсортировать TVirtualStringTree?