有關TTreeView |
|
Q_User
一般會員 發表:1 回覆:1 積分:0 註冊:2002-04-24 發送簡訊給我 |
==原因==
在TTreeView裡要拖曳TTreeNode,(資料區超過畫面而出現ScrollBar)
但當我拖至最上方或最下方時,sCrollBar卻動也不動,
使得拖曳動作只能受限於畫面,而無法概括整個資料區 ==問題==
當物件拖至邊界時,該如何讓畫面捲動呢? == Try and Error ==
我試著在DragOver的Event中寫: if Y<=0 then //移到畫面上邊界
VertScrollBar.Position :=VertScrollBar.Position -10;
else if Y >= tTreeView1.ClientHeight then //移到畫面下邊界
VertScrollBar.Position :=VertScrollBar.Position +10; 但發現VertScrollBar是屬於TForm繼承TScrollingWinControl的Property,
所以根本不是控制出現在TTreeView中的ScrollBar,
而且TTreeView也不繼承TScrollingWinControl的Property, So....我該如何控制出現在TTreeView中的ScrollBar,或其他方法使畫面自動捲動呢?
|
ccchen
版主 發表:61 回覆:940 積分:1394 註冊:2002-04-15 發送簡訊給我 |
引言: ==原因== 在TTreeView裡要拖曳TTreeNode,(資料區超過畫面而出現ScrollBar) 但當我拖至最上方或最下方時,sCrollBar卻動也不動, 使得拖曳動作只能受限於畫面,而無法概括整個資料區 ==問題== 當物件拖至邊界時,該如何讓畫面捲動呢? == Try and Error == 我試著在DragOver的Event中寫: if Y<=0 then //移到畫面上邊界 VertScrollBar.Position :=VertScrollBar.Position -10; else if Y >= tTreeView1.ClientHeight then //移到畫面下邊界 VertScrollBar.Position :=VertScrollBar.Position 10; 但發現VertScrollBar是屬於TForm繼承TScrollingWinControl的Property, 所以根本不是控制出現在TTreeView中的ScrollBar, 而且TTreeView也不繼承TScrollingWinControl的Property, So....我該如何控制出現在TTreeView中的ScrollBar,或其他方法使畫面自動捲動呢?在DragOver的Event中寫 var ht : THitTests; begin ht := TreeView1.GetHitTestInfoAt(X,Y); if htAbove in ht then TreeView1.TopItem:=Treeview1.topitem.GetPrev else if htBelow in ht then TreeView1.TopItem:=Treeview1.topitem.Getnext; |
領航天使
站長 發表:12216 回覆:4186 積分:4084 註冊:2001-07-25 發送簡訊給我 |
引言: 在DragOver的Event中寫 var ht : THitTests; begin ht := TreeView1.GetHitTestInfoAt(X,Y); if htAbove in ht then TreeView1.TopItem:=Treeview1.topitem.GetPrev else if htBelow in ht then TreeView1.TopItem:=Treeview1.topitem.Getnext;非常感謝ccchen兄的回覆,我將他改為如下,效果好像更好喔! procedure TForm1.TreeView1DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); var ht : THitTests; begin if y<=10 then TreeView1.TopItem:=Treeview1.topitem.GetPrev else if y>=TreeView1.ClientHeight-10 then TreeView1.TopItem:=Treeview1.topitem.Getnext; end;~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~ |
Q_User
一般會員 發表:1 回覆:1 積分:0 註冊:2002-04-24 發送簡訊給我 |
|
領航天使
站長 發表:12216 回覆:4186 積分:4084 註冊:2001-07-25 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |