button1.Enabled = false;
除了禁止用户点击它之外,还有其他方法吗?
我正在 WinForms 中实现简单的井字游戏,如果我使用 Enabled 属性,按钮文本的颜色会变成灰色,这会严重破坏我的用户界面。
我想保留按钮的格式,只是禁止用户进一步点击。
可能最简单的方法是在事件处理程序被调用后分离它。
void HandleClick(object sender, EventArgs e)
{
((Button)sender).Click -= HandleClick;
// Handle the click
}
您可以为所有按钮示例保留一组布尔值
bool [] buttonClicked = new bool [9];
那么你有 9 个按钮单击事件处理程序
private void button1_Clicked(object sender, EventArg e)
{
if(buttonClicked[0]==true)
return;
else
{
// your code goes here
// mark this button in boolean array as clicked
buttonClicked[0] = true;
}
}
并且不要忘记在每个新游戏中将 buttonClicked 数组值重置为 false
for(int i=0;i<9;i++)
{
buttonClicked[i]=false;
}
希望这可以帮助
在每个方块中,您可以放置一个标签和一个按钮。当按钮被按下时,它会隐藏自己(将 Visible 设置为 false)并显示标签(再次通过设置其 Visible 属性)。标签文本可以设置为 O 或 X。