我正在用C#制作一个蛇游戏,我有一个暂停和播放按钮。问题是:这些按钮位于完全相同的位置,所以在点击暂停后我无法点击启动(因为它仍处于活动状态)
private void picBreak_Click(object sender, EventArgs e)
{
timer1.Stop();
picBreak.Visible = false;
picStart.Visible = true;
}
private void picStart_Click(object sender, EventArgs e)
{
timer1.Start();
picBreak.Visible = true;
picStart.Visible = false;
picStart.Focus = true;
}
.Focus不起作用并给出错误:/
错误=错误1无法分配给'焦点',因为它是'方法组'C:\ Users \ Mave \ Desktop \ SnakeGame \ Form1.cs 271 7 SnakeGame
答案 0 :(得分:4)
Control.Focus是一种方法,而不是财产。这应该是:
private void picStart_Click(object sender, EventArgs e)
{
timer1.Start();
picBreak.Visible = true;
picStart.Visible = false;
picBreak.Focus(); // Focus picBreak here?
}
答案 1 :(得分:1)
在你的代码中,你试图将焦点放在你在前一行中不可见的控件上......而且,编译器告诉你Focus
是一个方法,并且你正在尝试使用它作为一种财产。
我会以不同的方式执行此操作:
只需一个名为btnStartPauseResume
的按钮...并在点击事件中:
private void btnStartPauseResume_Click(object sender, EventArgs e)
{
if (btnStartPause.Text == "start")
{
btnStartPause.Text == "pause";
// code to start the game
}
else if (btnStartPause.Text == "pause")
{
btnStartPause.Text == "resume";
// code to pause the game
}
else if (btnStartPause.Text == "resume")
{
btnStartPause.Text == "pause";
// code to resume the game
}
}