画像をクリックして画像ボックスを移動すると、スクロールバーの位置を更新する必要があります。それはいつも目の前にあり、右(水平)と下(垂直)上を移動するだけです。マウスの移動時に自動スクロール位置を設定する
private void pictureBox1_MouseMove_1(object sender, MouseEventArgs e)
{
....
Point currentMousePos = e.Location;
int distanceX = currentMousePos.X - mouseX;
int distanceY = currentMousePos.Y - mouseY;
int newX = pictureBox1.Location.X + distanceX;
int newY = pictureBox1.Location.Y + distanceY;
if (newX + pictureBox1.Image.Width + 10 < pictureBox1.Image.Width && pictureBox1.Image.Width + newX + 10 > panel1.Width)
{
pictureBox1.Location = new Point(newX, pictureBox1.Location.Y);
}
if (newY + pictureBox1.Image.Height + 10 < pictureBox1.Image.Height && pictureBox1.Image.Height + newY + 10 > panel1.Height)
{
pictureBox1.Location = new Point(pictureBox1.Location.X, newY);
}
}
したがって、ユーザーはフォーム上の画像ボックスをドラッグできますか?どのスクロールバーについて話していますか? –
@ JohnArlen。いいえ、私のピクチャボックスは、オートスクロールをtrueに設定したパネルにあり、画像がパネルよりも大きい場合はスクロールバーが表示されます。マウスを動かすと、手書きカーソルを持っているときに、Acrobarのリーダーのように、パネルの境界内で絵文字を動かします。しかし、私のscorbarsは正常に動作しません、彼らは他の側にのみ広がって、かわいいから移動しないでください。提案はありますか? – gormit
私は正直なところ、まだ明快さが必要だと感じています...あなたが探しているもの。アクロバットリーダーやGoogleマップのように、マウスで画像を保持してドラッグすると、スクロールバーが機能するようにしたいですか? – Sandy