cxGrid 控制表格翻页

cxGrid的控制,跟一般的control的控制不太一樣,一般的控件可以通過

senderMessage(),來控制,而cxGrid不行,要通過cxGrid1DBBandedTableView1.Controller的相應方法才可以。

 

 

cxGrid1DBBandedTableView1.Controller.DoKeyDown(key, []);

cxGrid1DBBandedTableView1.Controller.Scroll(sbVertical, scLineDown, i);

 

用DataController.Controller.Scroll(AScrollBarKind:   TScrollBarKind;   AScrollCode:   TScrollCode;var   AScrollPos:   Integer)這個方法(在dataview下)
TScrollBarKind   =   (sbHorizontal,   sbVertical);(可能要uses   StdCtrls)
TScrollCode   =   (scLineUp,   scLineDown,   scPageUp,   scPageDown,   scPosition,
 
 
 
  scTrack,   scTop,   scBottom,   scEndScroll);
AScrollPos一定要用變量 

 

選sbVertical(垂直滾動條)
scLineUp是向上滾動,滾動AScrollPos行
scLineDown是向下滾動,滾動AScrollPos行
scPageUp是向上翻頁,翻AScrollPos頁(dwon向下)
scPosition是直接定位,定位在AScrollPos的位置
scTop,   scBottom是讓滾動條移到頂部或者底部
scEndScroll我沒測試

 

 

cxGrid1DBBandedTableView1.Controller.DoKeyDown(key, []);

 

DEMO:

procedure Tfrom1.btn_UpClick(Sender: TObject);
var
  i :integer;
  Key: Word ;
begin
  Key :=33;
  cxGrid1DBBandedTableView1.Controller.DoKeyDown(key, [ssShift]);
  cxGrid1DBBandedTableView1.Controller.Scroll(sbVertical, scPageUp, i);
end;

posted @ 2017-01-14 16:12  @网上邻居  阅读(409)  评论(0)    收藏  举报