【问题标题】:Python3 tkinter for game board用于游戏板的 Python3 tkinter
【发布时间】:2016-01-11 11:03:12
【问题描述】:

我已经编写了一个基于Python 3.4.3 的文本的国际象棋代码。我将包含棋子标识的NumPy 数组打印到命令行(标准输出)。但是,我想为它指定一个GUI,在tkinter 中这样做容易吗?我的棋盘输出如下:

['Rb' '0 ' 'Bb' 'Qb' 'Kb' 'Bb' 'Nb' 'Rb']
['Pb' 'Pb' 'Pb' 'Pb' '0 ' 'Pb' 'Pb' 'Pb']
['0 ' '0 ' 'Nb' '0 ' '0 ' '0 ' '0 ' '0 ']
['0 ' '0 ' '0 ' '0 ' 'Pb' '0 ' '0 ' '0 ']
['0 ' '0 ' '0 ' '0 ' 'Pw' '0 ' '0 ' '0 ']
['0 ' '0 ' '0 ' '0 ' '0 ' 'Qw' '0 ' '0 ']
['Pw' 'Pw' 'Pw' 'Pw' '0 ' 'Pw' 'Pw' 'Pw']
['Rw' 'Nw' 'Bw' '0 ' 'Kw' 'Bw' 'Nw' 'Rw']

其中R:Rook,N:Knight,B:Bishop,Q:Queen,K:King,P:Pawn,小写字母表示对应的颜色。我几乎没有设计 GUI 的经验并愿意尝试除 tkinter 之外的其他软件包?

代码太长,我把它们都贴在pastebin.com这里是链接http://pastebin.com/Lt03PWkN

【问题讨论】:

  • 是的,在 tkinter 中很容易做到这一点。这就是你想知道的全部吗?
  • @BryanOakley 是的,这就是我想知道的全部内容,我正在自己尝试,请查看我的最新编辑。

标签: python-3.x user-interface tkinter


【解决方案1】:

我会将它设置在棋盘上,并为棋盘上的每个小方块赋予一个值或变量以使其与它一起使用,例如

sq1="empty"

给棋盘上的每个方格一个向上 1 的值

一旦棋盘上的棋子向上移动适当的数量,而不是拿走棋子的价值并将其移到棋子所在的新棋子上

要弄清楚这件作品能够做什么,请为每件作品创建一个名为 x 和 y 的新变量,将其添加到 y 和 x 以弄清楚它可以做什么。

是的,这是可能的,但很难

【讨论】:

  • 但是,我无法让 Tkinter 在移动一块时连续显示和升级。我该怎么做?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多