次の方法で共有


ScrollableControl.AutoScrollPosition プロパティ

定義

自動スクロールの位置を取得または設定します。

public:
 property System::Drawing::Point AutoScrollPosition { System::Drawing::Point get(); void set(System::Drawing::Point value); };
[System.ComponentModel.Browsable(false)]
public System.Drawing.Point AutoScrollPosition { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.AutoScrollPosition : System.Drawing.Point with get, set
Public Property AutoScrollPosition As Point

プロパティ値

自動スクロールの位置をピクセル単位で表す Point

属性

次のコード例では、派生クラスPanelScrollableControl使用し、スクロール可能領域の左上隅にボタンを追加します。 この例では、 によって決定されるオフセットを使用できます AutoScrollPosition。 この例は、 を含む が含PanelButtonまれている というForm前提で記述されています。 自動スクロールを有効にするには、 のクライアント領域の外側にボタンを配置します Panel

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 = gcnew Button;
      myButton->Location = Point(0 + panel1->AutoScrollPosition.X,0 + panel1->AutoScrollPosition.Y);
      panel1->Controls->Add( myButton );
   }
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);
}
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

注釈

プロパティは AutoScrollPosition 、スクロール可能なコントロールの表示部分の位置を表します。 表示されるコントロールの部分を変更するには、このプロパティを使用します。

プログラムによってフォームにコントロールを追加する場合は、 プロパティを AutoScrollPosition 使用して、現在の表示可能なスクロール領域の内側または外側にコントロールを配置します。

注意

Xコントロールが開始位置 (0,0) からスクロールした場合、取得された と Y 座標の値は負の値になります。 このプロパティを設定する場合は、常に正 X の値と Y 値を割り当てて、開始位置を基準にしてスクロール位置を設定する必要があります。 たとえば、水平スクロール バーがあり、x と y を 200 に設定した場合、スクロールを 200 ピクセル右に移動します。x と y を 100 に設定すると、スクロールは開始位置から 100 ピクセル離れた位置に設定されているため、左に 100 ピクセルジャンプするように見えます。 最初のケースでは、 AutoScrollPosition は {-200, 0} を返し、2 番目の場合は を返します {-100,0}。

変更を AutoScrollPosition 検出するには、イベントの Paint イベント ハンドラーを作成し、古い位置の値をプライベート変数に保存し、後続 Paint のイベントで新しい値を古い値と比較します。

適用対象

こちらもご覧ください