作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
大家好,我正在开发跳棋游戏。我有这种宣布获胜者的方法,我希望是否有办法使用循环来做到这一点。目前它工作得很好 :),但我不得不对其进行硬编码而不是使用逻辑。
public void checkWinner() {
if (pictureBoxs[0].Image != bc && pictureBoxs[2].Image != bc && pictureBoxs[4].Image != bc && pictureBoxs[6].Image != bc && pictureBoxs[9].Image != bc && pictureBoxs[11].Image != bc &&
pictureBoxs[13].Image != bc && pictureBoxs[15].Image != bc && pictureBoxs[16].Image != bc && pictureBoxs[18].Image != bc && pictureBoxs[20].Image != bc && pictureBoxs[22].Image != bc &&
pictureBoxs[25].Image != bc && pictureBoxs[27].Image != bc && pictureBoxs[29].Image != bc && pictureBoxs[31].Image != bc && pictureBoxs[32].Image != bc && pictureBoxs[34].Image != bc &&
pictureBoxs[36].Image != bc && pictureBoxs[38].Image != bc && pictureBoxs[41].Image != bc && pictureBoxs[43].Image != bc && pictureBoxs[45].Image != bc && pictureBoxs[47].Image != bc &&
pictureBoxs[48].Image != bc && pictureBoxs[50].Image != bc && pictureBoxs[52].Image != bc && pictureBoxs[54].Image != bc && pictureBoxs[57].Image != bc && pictureBoxs[59].Image != bc &&
pictureBoxs[61].Image != bc && pictureBoxs[63].Image != bc) {
MessageBox.Show("White is the winner!");
} else if (pictureBoxs[0].Image != wc && pictureBoxs[2].Image != wc && pictureBoxs[4].Image != wc && pictureBoxs[6].Image != wc && pictureBoxs[9].Image != wc && pictureBoxs[11].Image != wc &&
pictureBoxs[13].Image != wc && pictureBoxs[15].Image != wc && pictureBoxs[16].Image != wc && pictureBoxs[18].Image != wc && pictureBoxs[20].Image != wc && pictureBoxs[22].Image != wc &&
pictureBoxs[25].Image != wc && pictureBoxs[27].Image != wc && pictureBoxs[29].Image != wc && pictureBoxs[31].Image != wc && pictureBoxs[32].Image != wc && pictureBoxs[34].Image != wc &&
pictureBoxs[36].Image != wc && pictureBoxs[38].Image != wc && pictureBoxs[41].Image != wc && pictureBoxs[43].Image != wc && pictureBoxs[45].Image != wc && pictureBoxs[47].Image != wc &&
pictureBoxs[48].Image != wc && pictureBoxs[50].Image != wc && pictureBoxs[52].Image != wc && pictureBoxs[54].Image != wc && pictureBoxs[57].Image != wc && pictureBoxs[59].Image != wc &&
pictureBoxs[61].Image != wc && pictureBoxs[63].Image != wc) {
MessageBox.Show("Black is the winner!");
}
}
我不能使用从 0 到 63 的循环,因为 pictureBoxs[1]
或 pictureBoxs[3]
设置为空,它会产生错误!
最佳答案
使用 LINQ 只抓取不是null
的PictureBox
,然后测试Image
的值:
if (pictureBoxs.Where(p => p != null).All(p => p.Image != bc))
MessageBox.Show("White is the winner!");
else if (pictureBoxs.Where(p => p != null).All(p => p.Image != wc))
MessageBox.Show("Black is the winner!");
关于c# - 检查 pictureBox 数组中的所有 pictureBoxes - 跳棋游戏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29690623/
我正在开发一个跳棋游戏,我想将字符“x”和“o”打印到二维数组中。但我的代码不起作用,它打印出不同的字符。我需要帮助。 这是我的代码: #include void message() { char
我是一名 Android 新手,试图利用我的 VB 经验(8 年前)设计一个 UI。我正在尝试创建一个棋盘,在 VB 中,它是一种形式,我可以根据需要在多行中连续添加多个可调整大小的面板小部件。由于这
我是一个相对缺乏经验的程序员,最近我对为学校项目制作西洋跳棋游戏应用产生了兴趣。我不确定我可以从哪里开始(或者我是否应该尝试)创建它。我想到的项目可能只涉及简单的 AI 和多人游戏模式。 谁能给我一些
我是一名优秀的程序员,十分优秀!