C#中怎样在窗体打开的时候执行一个动作例如button1_Click,C#中如何表示"如果button1被点击过,则 x=y",C#语言中怎么用代码实现按钮的click事件?...
C#中怎样在窗体打开的时候执行一个动作例如button1_Click
“ 窗体打开时执行一个动作”的含义是用代码模拟某个事件发生,进而调用这个事件的处理方法。因此,要实现这个要求,只要直接调用这个事件的处理方法即可。需要注意的是:必须编写这个事件对应的处理方法,否则,无法用代码模拟事件发生。 【例1】打开窗体时,模拟鼠标点击命令按钮 using System;using System.Windows.Forms;namespace WindowsFormsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { //直接调用 button1_Click,模拟鼠标点击button1 button1_Click(null, EventArgs.Empty); // 注意! // 调用button1.PerformClick()也可以模拟鼠标点击button1 } private void button1_Click(object sender, EventArgs e) { MessageBox.Show("button1被鼠标点击!"); } }}【例2】打开窗体时,模拟鼠标双击窗体 using System;using System.Windows.Forms;namespace WindowsFormsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { //直接调用 Form1_DoubleClick,模拟鼠标双击窗体 Form1_DoubleClick(null, EventArgs.Empty); } private void Form1_DoubleClick(object sender, EventArgs e) { MessageBox.Show("窗体被鼠标点击!"); } }}
C#中如何表示"如果button1被点击过,则 x=y"
又是你啊,你提了好多类似的问题了,我就帮你解答一下吧。我在之前的你的一个提问里看到,你说按等于以后结果一直是0,为什么会这样?我就来解答这个问题。
一,原因:button25也就是你的等于按键被点击以后,它的触发它的源sender是button25,因此无论你怎么判断,z一直是0.另外你这句this.button28.Click += new EventHandler(button25_Click)绑定以后,没有一个东西去触发button28.click事件,也就是说button25_Click方法根本执行不了
二,解决办法:我帮你修改了下你的代码,如下
double x, y;
int i=0;
private void button28_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(label1.Text);
label1.Text = "";
this.button28.Click += new EventHandler(25Click);
i=1;
}
private void button24_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(label1.Text);
label1.Text = "";
this.button24.Click += new EventHandler(25Click);
i=2;
}
private void button19_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(label1.Text);
label1.Text = "";
this.button19.Click += new EventHandler(25Click);
i=3;
}
private void button14_Click(object sender, EventArgs e)
{
x = Convert.ToDouble(label1.Text);
label1.Text = "";
this.button14.Click += new EventHandler(25Click);
i=4;
}
private void 25Click(object sender, EventArgs e)//这只是一个普通方法
{
y = Convert.ToDouble(label1.Text);
double z=0;
if (sender == this.button28)
z = x + y;
else if (sender == this.button24)
z = x - y;
else if (sender == this.button19)
z = x * y;
else if (sender == this.button14)
z = x / y;
string result =z.ToString("");
label1.Text = result;
}
private void dengyubutton_Click(object sender, EventArgs e)//这是等于按键的click事件执行的方法
{
switch(a)
{
case 1:button28.PerformClick();break;//PerformClick方法是触发事件
case 2:button24.PerformClick();break;
case 3:button19.PerformClick();break;
case 4:button14.PerformClick();break;
}
}
大概思路就是这样,我没在编译环境调试过,只是提供思路而已。
提醒一下,定义了int i=0,在button的click事件里面,要将i变为1,或者2,3,4
你要用关键字ref,这样就是引用传递了。我上面的代码没写全,您悠着点。
还有什么不懂的,您可以接着提问,谢谢
C#语言中怎么用代码实现按钮的click事件?
您好,解决方法如下: 绑定单击事件;button1.Click+=new EventHandler(but_Click); 编写Click事件处理方法 例如: private void but_Click(object sender, EventArgs e){//Click事件处理内容} 如何用C#语言的Socket、TCP/UDP写程序,把文件test.txt发送到服务器: TCP 接口服务框架 - C# 高性能自动化服务端框架 - 凹凸架构 试试fastCSharp,参考demo.testCase项目下的tcpStream。
下一篇:没有了