ScrollableControl.AutoScrollPosition プロパティ
自動スクロールの位置を取得または設定します。
Public Property AutoScrollPosition As Point
[C#]
public Point AutoScrollPosition {get; set;}
[C++]
public: __property Point get_AutoScrollPosition();public: __property void set_AutoScrollPosition(Point);
[JScript]
public function get AutoScrollPosition() : Point;public function set AutoScrollPosition(Point);
プロパティ値
自動スクロールの位置をピクセル単位で表す Point オブジェクト。
解説
AutoScrollPosition プロパティは、スクロール可能なコントロール内にあるコントロールの位置を調整するために使用されます。
スクロール可能なコントロールにコントロールを追加する場合は、 AutoScrollPosition の x 座標と y 座標を、追加するコントロールの Control.Location プロパティの対応する座標からのオフセットとして加算するか、減算する必要があります。スクロール位置の上または左にコントロールを追加する場合は、このオフセットを目的の位置に加算する必要があります。逆に、スクロール位置の下または右にコントロールを追加する場合は、オフセットを減算する必要があります。
メモ AutoScrollPosition は、スクロール可能なコントロールの表示領域の四角形の位置を表します。コントロールがスクロールされてその開始位置 (0,0) から離れた場合、取得される X 座標値と Y 座標値は負の値になります。ただし、このプロパティを設定する場合、スクロールして開始位置から離れるときは正の値を、スクロールして開始位置に向かうときは負の値を、それぞれ X と Y に指定する必要があります。
使用例
[Visual Basic, C#, C++] ScrollableControl の派生クラスの Panel を使用し、スクロール可能な領域の左上隅にボタンを追加する例を次に示します。この例では、 AutoScrollPosition から取得されたオフセットを考慮に入れています。この例は、 Button 付きの Panel が配置された Form があることを前提にしています。自動スクロールを有効にするには、 Panel のクライアント領域の外にボタンを配置してください。
Private Sub button1_Click(sender As Object, _
e As EventArgs) Handles button1.Click
' Add a button to top left corner of the
' scrollable area, allowing for the offset.
panel1.AutoScroll = True
Dim myButton As New Button()
myButton.Location = New Point( _
0 + panel1.AutoScrollPosition.X, _
0 + panel1.AutoScrollPosition.Y)
panel1.Controls.Add(myButton)
End Sub
[C#]
private void button1_Click(object sender, EventArgs e)
{
/* Add a button to top left corner of the
* scrollable area, allowing for the offset. */
panel1.AutoScroll = true;
Button myButton = new Button();
myButton.Location = new Point(
0 + panel1.AutoScrollPosition.X,
0 + panel1.AutoScrollPosition.Y);
panel1.Controls.Add(myButton);
}
[C++]
private:
void button1_Click(Object* /*sender*/, EventArgs* /*e*/) {
/* Add a button to top left corner of the
* scrollable area, allowing for the offset. */
panel1->AutoScroll = true;
Button* myButton = new Button();
myButton->Location = Point(
0 + panel1->AutoScrollPosition.X,
0 + panel1->AutoScrollPosition.Y);
panel1->Controls->Add(myButton);
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
ScrollableControl クラス | ScrollableControl メンバ | System.Windows.Forms 名前空間 | AutoScroll | AutoScrollMargin | AutoScrollMinSize