A. Delphi VCLフォームアプリケーションを作成します。スクロールバーは、例えば、ツリービュー上に表示されているようTTreeViewをプログラムによってスクロールする方法は?
B.は、フォーム、名前それtvTest
とアイテムとそれを記入し、ツリービューのサイズを設定するにTTreeViewの入れ:
C 。フォーム上のボタンを配置し、そのクリックハンドラにこのコードを書く:
procedure TForm1.btnScrollClick(Sender: TObject);
begin
tvTest.ScrollBy(tvTest.Width, 0);
end;
D.今すぐプログラムを実行し、ボタンをクリックしてください。おそらく、水平スクロールバーは左から右にスクロールする必要があります。しかし、何も起こりません。どうして?
スクロールバー(とスクロールバーのコンテンツを含む)を左から右、右から左、下、上にスクロールするにはどうすればよいですか?
デルファイ10.1ベルリンアップデート2
のWindows 7のx64 SP1
EDIT:私は(サミの提案に似ている)、このコードを使用する場合:
tvTest.ScrollBy(-3, -3);
を...私はこれを取得現代美術の一部:
'tvTest.ScrollBy(3、3);'を試し、ボタンを5回クリックすると – Sami
これはスクロールバーではなくツリービュースクロールのコンテンツのみを作成します。しかし、ボタンを数回クリックすると、部分的に画面領域の外にフォームがドラッグされ、ツリービューのコンテンツを元の場所に戻してドラッグしたときに再び表示されました。だから、TreeViewは実際にはスクロールされていませんでしたが、スクロールされたのはそれだけでした。どうして?そして、私は本当にTreeviewをスクロールできますか? – user1580348