C#winform有2个panel,在右边panel获取鼠标的坐标(x,y),如何传递到panel1上弹出的窗口form2里面呢
panel1上面一个按钮点击会弹出form2窗口。下面是panel2鼠标单击响应事件,如何让x,y传递到form2表单的一个textbox.text里呢privatevo...
panel1上面一个按钮点击会弹出form2窗口。
下面是panel2鼠标单击响应事件,如何让x,y传递到form2表单的一个textbox.text里呢
private void splitContainer1_Panel2_Mouseclick(object sender,MouseEventArgs e)
{
int x;
int y;
x = e.X;
y = e.Y;
}
另外我如何让form1里面弹出form2响应事件写:
Form2 fm2 = new Form2();
fm2.ShowDialog();
是不是就无法再form1.splitcontainer,panel2里面点击鼠标了,有办法解决吗 展开
下面是panel2鼠标单击响应事件,如何让x,y传递到form2表单的一个textbox.text里呢
private void splitContainer1_Panel2_Mouseclick(object sender,MouseEventArgs e)
{
int x;
int y;
x = e.X;
y = e.Y;
}
另外我如何让form1里面弹出form2响应事件写:
Form2 fm2 = new Form2();
fm2.ShowDialog();
是不是就无法再form1.splitcontainer,panel2里面点击鼠标了,有办法解决吗 展开
3个回答
展开全部
把int x,int y放在事件外就可以了.
public static Int16 x;
public static Int16 y;
form2的load()事件里面写
TextBox1.text="x="+form1.x.tostring()+",y="+form1.y.tostring();
第二个问题你试试用fm2.show();
public static Int16 x;
public static Int16 y;
form2的load()事件里面写
TextBox1.text="x="+form1.x.tostring()+",y="+form1.y.tostring();
第二个问题你试试用fm2.show();
更多追问追答
追问
form2.Textbox1这个控件可以放X,Y坐标,有没有其他控件比这个更好的存储X,Y坐标啊
追答
看你是用作什么用途了,只是显示的话我一般是用label的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接调用Form2函数,
class Form2:Form
{
//......
public void ShowData(int x, int y)
{
textBox1.Text=x;
textBox2.Text=y;
}
//....
}
在看Form1中:
class Form1:Form
{
//这里需要一个Form2的变量,而非局部变量.因为需要跨函数调用.
Form2 form2;
private void button1_Click(object sender, EventArgs e)
{
form2.Show();
}
private void splitContainer1_Panel2_Mouseclick(object sender,MouseEventArgs e)
{
form2.ShowData(e.X,e.Y);
}
}
class Form2:Form
{
//......
public void ShowData(int x, int y)
{
textBox1.Text=x;
textBox2.Text=y;
}
//....
}
在看Form1中:
class Form1:Form
{
//这里需要一个Form2的变量,而非局部变量.因为需要跨函数调用.
Form2 form2;
private void button1_Click(object sender, EventArgs e)
{
form2.Show();
}
private void splitContainer1_Panel2_Mouseclick(object sender,MouseEventArgs e)
{
form2.ShowData(e.X,e.Y);
}
}
更多追问追答
追问
textBox1.Text=x;
textBox2.Text=y;
这个地方textBox1和textBox2有错误啊,我在form2里面加了2个textBox的
追答
textBox1和textBox2是我随便模拟的两个啊.
你直接把这个换成你自己加的textBox的名字.
=0=你是初学者吗?好可爱的感觉.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Form1和Form2分别是两个窗体?要把Form1的值传到Form2中对吧?并且Form1 单击之后出现From2
追问
嗯,是的,我想在FORM2中的两个textbox能自动获取到form1.panel2里面鼠标点击的值
追答
Form2中:
Form2加个构造函数
int x,y;
public From2(int x,int y){
this.x=x;
this.y=y;
}
显示的时候直接等于x和y就好了
Form1中:
int x,y;
得到值得时候赋值给x,y
Form2显示代码
Form2 f=Form2(x,y);
f.show();
这样就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询