在图片框里点一下左键,执行一个drawstring咋不行咧。
想着 点一下左键,drawstring画出 鼠标的坐标private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
g.DrawString ("X:"+ xSignal .ToString (),new Font("宋体",10),new SolidBrush (Color .Red ),e.X,e.Y );
}
是不是需要重绘啊,具体要怎么做。this.Invalidate(true); --------------------编程问答-------------------- private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
Graphics g = pictureBox1.CreateGraphics();
g.Clear(Color.White);
g.DrawString("X:" + e.X.ToString()+"Y"+e.Y.ToString(), new Font("宋体", 10), new SolidBrush(Color.Red), e.X, e.Y);
}
这样就可以 如果不要先前鼠标点击的位置就不用g.Clear(Color.White);
--------------------编程问答--------------------
e.X应该是一个double类型的吧,,要是想截取小数的3位,该怎么转换。。
貌似C#的类型转换搞的 挺复杂的。。
变量前面加(类型),
convert.to...
变量.tostring...
这些个 有啥区别咧。 --------------------编程问答-------------------- 对了,,convert.toFloat 这个为啥没有呢 --------------------编程问答--------------------
private void pictureBox1_MouseClick(object sender, MouseEventArgs e)--------------------编程问答-------------------- 你这样画出的文字当界面最小化再最大化就消失了,最好的办法还是,找一张画布,在画布上绘制文字,然后在picturebox的Piant时间中将画布绘制到picturerbox上面 --------------------编程问答--------------------
{
Graphics g = Graphics.FromHwnd(pictureBox1.Handle);
g.DrawString("X:我很好", new Font("宋体", 10), new SolidBrush(Color.Red), e.X, e.Y);
}
public Form1()
{
InitializeComponent();
bmp = new Bitmap(pictureBox1.Width,pictureBox1.Height);
g = Graphics.FromImage(bmp);
}
Bitmap bmp;
Graphics g;
private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
g.DrawString("X:"+e.X, new Font("宋体", 10), new SolidBrush(Color.Red), e.X, e.Y);
pictureBox1.Refresh();
}
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
g.DrawImage(bmp, new Point(0,0));
}
补充:.NET技术 , C#