|
■No27530 (インビジブル さん) に返信
> その場合もやはり、AutoScrolをFalseにした状態でのスクロール位置を設定するためのプロパティがわからないのです
>
Panel1は、AutoScroll=False
Panel2は、AutoScroll=True
スクロールさせるために、ボタンコントロールをそれぞれのパネルの中に入れた。
Panel2をスクロールさせると、Panel1をスクロールするように連動させた。←ここが大事
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MsgBox("Panle1 = " & Me.Panel1.HorizontalScroll.Value.ToString) '← 常に0となる。
MsgBox("Panle2 = " & Me.Panel2.HorizontalScroll.Value.ToString) '← スクロール値が取得可能。
End Sub
Private Sub Panel2_Scroll(ByVal sender As Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles Panel2.Scroll
Panel1.HorizontalScroll.Value = Panel2.HorizontalScroll.Value
End Sub
Panel1は、AutoScroll=Falseなので、HorizontalScroll.Value は0のままだけど、パネルの中のボタン位置は移動する。
Panel2で、HorizontalScroll.Value 値の取得が可能。
あとは、Panel2を非表示にするとかする。
|