2015-06-10 42 views
0

我想在窗体中创建交互式故事并将选项连接到按钮。所以,我会像...将选项连接到按钮

 richTextBox1.Text = "Would you like to... 
          1. Kill a dragon? 
          2. Run away? 
          3. Talk to a dragon." 

     if (button choice) 
     {} 

     if else (button choice) 

     {} 

     else (button choice) 
     {} 

然后,我有我的表格上3个按钮命名为1,2,3,我如何使用这些按钮来做出选择的程序?

+0

你只需要用上面的代码来实现一个方法,该方法需要一个参数'int buttonChoice'。然后从按钮点击事件中调用该方法。 –

回答

1

试试这样说:

public Form1() 
{ 
    InitializeComponent(); 
    button1.Click += button_Click; 
    button2.Click += button_Click; 
    button3.Click += button_Click; 
} 

和:

private void button_Click(object sender, EventArgs e) 
{ 
    Button btn = sender as Button; 
    if (btn.Name == "button1") 
    { 
     // do something here according to.. 
    } 
    else if (btn.Name == "button2") 
    { 
     // do something here according to.. 
    } 
     .... 
} 
3

给予他们相同的点击处理程序,然后检查sender以确定哪个按钮被点击

+0

我想这样var btn = sender as Button; if(btn!= null) if(btn == btn1)但它不起作用 –

+0

@SergZ。所有关闭的按钮都将被实例化,因此没有任何按钮会变为null。 –

0

看起来应该如:

private void btns_Click(object sender, EventArgs e) 
    { 
     var btn = sender as Button; 
     if(btn == btn1) 
     { 
      MessageBox.Show("Choice 1"); 
     } 
     else if (btn == btn2) 
     { 
      MessageBox.Show("Choice 2"); 
     } 
     else if (btn == btn3) 
     { 
      MessageBox.Show("Choice 3"); 
     } 
    }