我想在双击时在文本框中创建一个elipse。但它似乎没有发生。
panel.MouseClick += create_terms;
private void create_terms(object sender, EventArgs arg)
{
if (Phys_terms_check.Checked == true)
{
MouseEventArgs e = (MouseEventArgs)arg;
Graphics g = CreateGraphics();
SolidBrush p = new SolidBrush(Color.Red);
Pen erase = new Pen(Color.White);
Panel panel = (Panel)sender;
g.FillEllipse(p, e.X+panel.Left,e.Y+panel.Top,10,10);
}
}
e.x
和e.y
似乎正在给出发件人的相对坐标。如何获得相对于表单的点。
答案 0 :(得分:0)
添加发件人的顶部和左侧坐标。
g.FillEllipse(p, e.X + textbox.Left, e.Y + textbox.Top, 10, 10);
但是,这不会显示,因为textbox paint事件填充了fire和重绘文本框。