C# 通过图片框和单选按钮进行用户输入
请容忍我,因为这是我第一次在这里写问题。我正在为我的C#面向对象编程类做一个项目,在创建处理用户输入所需的方法时遇到了困难 我有一个windows窗体,有6个图片框和6个单选按钮。每个单选按钮都有一个值,用户必须选择picturebox,然后选择一个单选按钮。我目前正在使用私有方法中的开关盒来验证输入并保持数据匹配,直到所有单选按钮都用完为止。我遇到了这样一个问题:if语句只允许picture one接受radiobutton1的值,而不能选择任何radiobutton并填充标签C# 通过图片框和单选按钮进行用户输入,c#,windows-forms-designer,C#,Windows Forms Designer,请容忍我,因为这是我第一次在这里写问题。我正在为我的C#面向对象编程类做一个项目,在创建处理用户输入所需的方法时遇到了困难 我有一个windows窗体,有6个图片框和6个单选按钮。每个单选按钮都有一个值,用户必须选择picturebox,然后选择一个单选按钮。我目前正在使用私有方法中的开关盒来验证输入并保持数据匹配,直到所有单选按钮都用完为止。我遇到了这样一个问题:if语句只允许picture one接受radiobutton1的值,而不能选择任何radiobutton并填充标签 int Rad
int RadPicked = 0;
private void RadioButtonSelection(int radPicked)
{
switch(radPicked)
{
case (1):
if (RadPicked == 1 && guessButton1.Checked)
{
guessLabel1.Text = guessButton1.Text;
guessButton1.Enabled = false;
}
else if (RadPicked == 1 && guessButton2.Checked)
{
guessLabel1.Text = guessButton2.Text;
guessButton2.Enabled = false;
}
else if (RadPicked == 1 && guessButton3.Checked)
{
guessLabel1.Text = guessButton3.Text;
guessButton3.Enabled = false;
}
else if (RadPicked == 1 && guessButton4.Checked)
{
guessLabel1.Text = guessButton4.Text;
guessButton4.Enabled = false;
}
else if (RadPicked == 1 && guessButton5.Checked)
{
guessLabel1.Text = guessButton5.Text;
guessButton5.Enabled = false;
}
else if (RadPicked == 1 && guessButton6.Checked)
{
guessLabel1.Text = guessButton6.Text;
guessButton6.Enabled = false;
}
else if (RadPicked == 0)
{
MessageBox.Show("Please select an image before selecting an answer.");
}
break;
case (2):
if (RadPicked == 2 && guessButton1.Checked)
{
guess2Label.Text = guessButton1.Text;
guessButton1.Enabled = false;
}
else if (RadPicked == 2 && guessButton2.Checked)
{
guess2Label.Text = guessButton2.Text;
guessButton2.Enabled = false;
}
else if (RadPicked == 2 && guessButton3.Checked)
{
guess2Label.Text = guessButton3.Text;
guessButton3.Enabled = false;
}
else if (RadPicked == 2 && guessButton4.Checked)
{
guess2Label.Text = guessButton4.Text;
guessButton4.Enabled = false;
}
else if (RadPicked == 2 && guessButton5.Checked)
{
guess2Label.Text = guessButton5.Text;
guessButton5.Enabled = false;
}
else if (RadPicked == 2 && guessButton6.Checked)
{
guess2Label.Text = guessButton6.Text;
guessButton6.Enabled = false;
}
else if (RadPicked == 0)
{
MessageBox.Show("Please select an image before selecting an answer.");
}
break;
case (3):
if (RadPicked == 3 && guessButton1.Checked)
{
guess3Label.Text = guessButton1.Text;
guessButton1.Enabled = false;
}
else if (RadPicked == 3 && guessButton2.Checked)
{
guess3Label.Text = guessButton2.Text;
guessButton2.Enabled = false;
}
else if (RadPicked == 3 && guessButton3.Checked)
{
guess3Label.Text = guessButton3.Text;
guessButton3.Enabled = false;
}
else if (RadPicked == 3 && guessButton4.Checked)
{
guess3Label.Text = guessButton4.Text;
guessButton4.Enabled = false;
}
else if (RadPicked == 3 && guessButton5.Checked)
{
guess3Label.Text = guessButton5.Text;
guessButton5.Enabled = false;
}
else if (RadPicked == 3 && guessButton6.Checked)
{
guess3Label.Text = guessButton6.Text;
guessButton6.Enabled = false;
}
else if (RadPicked == 0)
{
MessageBox.Show("Please select an image before selecting an answer.");
}
break;
case (4):
if (RadPicked == 4 && guessButton1.Checked)
{
guess4Label.Text = guessButton1.Text;
guessButton1.Enabled = false;
}
else if (RadPicked == 4 && guessButton2.Checked)
{
guess4Label.Text = guessButton2.Text;
guessButton2.Enabled = false;
}
else if (RadPicked == 4 && guessButton3.Checked)
{
guess4Label.Text = guessButton3.Text;
guessButton3.Enabled = false;
}
else if (RadPicked == 4 && guessButton4.Checked)
{
guess4Label.Text = guessButton4.Text;
guessButton4.Enabled = false;
}
else if (RadPicked == 4 && guessButton5.Checked)
{
guess4Label.Text = guessButton5.Text;
guessButton5.Enabled = false;
}
else if (RadPicked == 4 && guessButton6.Checked)
{
guess4Label.Text = guessButton6.Text;
guessButton6.Enabled = false;
}
else if (RadPicked == 0)
{
MessageBox.Show("Please select an image before selecting an answer.");
}
break;
case (5):
if (RadPicked == 5 && guessButton1.Checked)
{
guess5Label.Text = guessButton1.Text;
guessButton1.Enabled = false;
}
else if (RadPicked == 5 && guessButton2.Checked)
{
guess5Label.Text = guessButton2.Text;
guessButton2.Enabled = false;
}
else if (RadPicked == 5 && guessButton3.Checked)
{
guess5Label.Text = guessButton3.Text;
guessButton3.Enabled = false;
}
else if (RadPicked == 5 && guessButton4.Checked)
{
guess5Label.Text = guessButton4.Text;
guessButton4.Enabled = false;
}
else if (RadPicked == 5 && guessButton5.Checked)
{
guess5Label.Text = guessButton5.Text;
guessButton5.Enabled = false;
}
else if (RadPicked == 5 && guessButton6.Checked)
{
guess5Label.Text = guessButton6.Text;
guessButton6.Enabled = false;
}
else if (RadPicked == 0)
{
MessageBox.Show("Please select an image before selecting an answer.");
}
break;
case (6):
if (RadPicked == 6 && guessButton1.Checked)
{
guess6Label.Text = guessButton1.Text;
guessButton1.Enabled = false;
}
else if (RadPicked == 6 && guessButton2.Checked)
{
guess6Label.Text = guessButton2.Text;
guessButton2.Enabled = false;
}
else if (RadPicked == 6 && guessButton3.Checked)
{
guess6Label.Text = guessButton3.Text;
guessButton3.Enabled = false;
}
else if (RadPicked == 6 && guessButton4.Checked)
{
guess6Label.Text = guessButton4.Text;
guessButton4.Enabled = false;
}
else if (RadPicked == 6 && guessButton5.Checked)
{
guess6Label.Text = guessButton5.Text;
guessButton5.Enabled = false;
}
else if (RadPicked == 6 && guessButton6.Checked)
{
guess6Label.Text = guessButton6.Text;
guessButton6.Enabled = false;
}
else if (RadPicked == 0)
{
MessageBox.Show("Please select an image before selecting an answer.");
}
break;
}
}
private void AnswerSelection(int picked)
{
switch (picked)
{
case (1):
RadPicked = 1;
break;
case (2):
RadPicked = 2;
break;
case (3):
RadPicked = 3;
break;
case (4):
RadPicked = 4;
break;
case (5):
RadPicked = 5;
break;
case (6):
RadPicked = 6;
break;
}
}
private void box1PictureBox_Click(object sender, EventArgs e)
{
AnswerSelection(1);
}
private void box2PictureBox_Click(object sender, EventArgs e)
{
AnswerSelection(2);
}
private void box3PictureBox_Click(object sender, EventArgs e)
{
AnswerSelection(3);
}
private void box4PictureBox_Click(object sender, EventArgs e)
{
AnswerSelection(4);
}
private void box5PictureBox_Click(object sender, EventArgs e)
{
AnswerSelection(5);
}
private void box6PictureBox_Click(object sender, EventArgs e)
{
AnswerSelection(6);
}
private void guessButton1_CheckedChanged(object sender, EventArgs e)
{
RadioButtonSelection(1);
}
private void guessButton2_CheckedChanged(object sender, EventArgs e)
{
RadioButtonSelection(2);
}
private void guessButton3_CheckedChanged(object sender, EventArgs e)
{
RadioButtonSelection(3);
}
private void guessButton4_CheckedChanged(object sender, EventArgs e)
{
RadioButtonSelection(4);
}
private void guessButton5_CheckedChanged(object sender, EventArgs e)
{
RadioButtonSelection(5);
}
private void guessButton6_CheckedChanged(object sender, EventArgs e)
{
RadioButtonSelection(6);
}
感谢所有有时间看这个并帮助我的人。
@美国东部时间凌晨3:53编辑以显示新的主要工作代码。欢迎使用StackOverflow:)。请确切说明您面临的问题我想我的问题在于单选按钮选择是如何将信息发送到if语句的。现在看来,我能从单选按钮获取字符串来填充猜测标签的唯一时间是单选按钮的编号是否与picturebox的编号匹配。我已经能够通过快速点击强制其他值进入,但这并不理想。