私はグラフプログラムを作って、マウスの座標をグラフィックスケールに等しくする必要があるところでつまむ。 MouseMove機能を使用してマウス座標を変換する
RectangleF world = new RectangleF(wxmin, wymin, wwid, whgt);
PointF[] device_points =
{
new PointF(0, PictureBox1.ClientSize.Height),
new PointF(PictureBox1.ClientSize.Width, PictureBox1.ClientSize.Height),
new PointF(0, 0),
};
Matrix transform = new Matrix(world, device_points);
gr.Transform = transform;
イム:ピクチャボックスで、私は私のグラフィックを拡張する変換を使用します。マウス座標を変換する方法はありますか?私は、x = 9の上に私のマウスを置いたとき、私は私のマウスを必要とする9
private void PictureBox1_MouseMove(object sender, MouseEventArgs e)
{
Console.WriteLine(e.X);
}
* transform *のトラックを失うことはありません。 Invert()メソッドが好きでしょう。マウス座標をグラフ座標に戻すのに便利です。 –