如何在屏幕截图上使用这样的帮助行制作十字光标:
我知道如何制作crosshire光标:
this.Cursor = System.Windows.Forms.Cursors.Cross;
也可以是这样的:
像在CAD软件中一样。
答案 0 :(得分:4)
这是我使用的代码。 x和y是尺寸。在我的情况下,我可以在光标上有一些文本,这是名称。如果你想要点或短划线,那么你需要用笔来做。
private Cursor crossCursor(Pen pen, Brush brush, string name, int x, int y) {
var pic = new Bitmap(x, y);
Graphics gr = Graphics.FromImage(pic);
var pathX = new GraphicsPath();
var pathY = new GraphicsPath();
pathX.AddLine(0, y / 2, x, y / 2);
pathY.AddLine(x / 2, 0, x / 2, y);
gr.DrawPath(pen, pathX);
gr.DrawPath(pen, pathY);
gr.DrawString(name, Font, brush, x / 2 + 5, y - 35);
IntPtr ptr = pic.GetHicon();
var c = new Cursor(ptr);
return c;
}
答案 1 :(得分:0)
只需创建两个标签框 lab_X_Axis 和 lab_Y_Axis 。 在图表mousemove功能代码如下所示..
private void chart1_MouseMove(object sender, MouseEventArgs e)
{
lab_X_Axis.Location = new Point((e.X), 21);
lab_Y_Axis.Location = new Point(76, e.Y);
}
private void Form1_Load(object sender, EventArgs e)
{
lab_X_Axis.AutoSize = false;
lab_Y_Axis.AutoSize = false;
lab_X_Axis.Text="";
lab_Y_Axis.Text="";
lab_X_Axes.Size = new Size(1, 300);
lab_Y_Axes.Size = new Size(300, 1);
}