4.Python画一个五子棋棋盘

作者: 赵明嗯 | 来源:发表于2020-06-09 22:05 被阅读0次

今天我们通过wx.PaintDC在窗体上画出一个五子棋棋盘。要想在wxPython创建的窗体对象上通过wx.PaintDC画图,需要在该窗体上绑定一个画图事件wx.EVT_PAINT,然后在事件处理函数里画出我们需要的线条。
我们的棋盘是画在panel上的,所以画图事件也是绑定在panel上,画图的容器mydc也是建立在panel上。我们通过 self.unit = 30、self.dotnum = 15来控制窗体及棋盘的大小,unit为格子边长,dotnum为棋盘每条边的交点个数。

#画一个五子棋棋盘
import wx
class myFrame(wx.Frame):
    def __init__(self):
        self.unit = 30
        self.dotnum = 15
        super().__init__\
            (parent=None,pos=[100,100],
             size=[self.unit*self.dotnum
                   +self.unit+20,
                   self.unit*self.dotnum
                   +self.unit+30+20],
             title="商贾三国")
        self.SetIcon(wx.Icon("WeatherBundle.ico"))
        self.panel = wx.Panel(self)
        self.panel.SetBackgroundColour((220, 210, 0))
        self.panel.Bind(wx.EVT_PAINT,self.draw)
        self.Show()
    def draw(self,event):
        mydc=wx.PaintDC(self.panel)
        unit=self.unit
        dotnum=self.dotnum
        x=unit
        y=unit
        for i in range(1,dotnum+1):
            mydc.DrawLine(x,y,x,unit*dotnum)
            x=x+unit
        x=unit
        for i in range(1,dotnum+1):
            mydc.DrawLine(x, y, unit*dotnum, y)
            y=y+unit
myapp=wx.App()
myframe=myFrame()
myapp.MainLoop()
qipan.png

相关文章

  • 4.Python画一个五子棋棋盘

    今天我们通过wx.PaintDC在窗体上画出一个五子棋棋盘。要想在wxPython创建的窗体对象上通过wx.Pai...

  • ios 五子棋二

    接着之前的 五子棋项目写的 棋盘已经画好了 下面开始添加棋子 计算棋子的位子 画一个棋盘 添加点击事件的方法 获取...

  • python 画棋盘

    最近 python 上毒, 今天尝试了一下 python , 画一个五子棋的棋盘 直接上代码 , 代码里面有注释 ...

  • Java数据结构与算法分析 | 稀疏数组

    五子棋游戏的存取需求 在介绍稀疏数组前我们先来引入一个需求,下面是一个五子棋的棋盘(15 * 15),玩到中途时想...

  • 狗子大战妈妈

    今天继续跟狗子对战五子棋。 “妈妈,陪我玩吧!” “玩什么?” “五子棋啊!” “好吧!” 狗子迫不及待地铺好棋盘...

  • 电影院找位置

    标题:3-6岁空间知觉训练 ️时间:2019.2.27 ️所用道具:五子棋 内容简介:电影院找位置 把五子棋棋盘比...

  • 使用 Min-Max 搜索和启发式评估函数实现五子棋 AI

    问题描述 五子棋AI。 设计一个交互式的应用,用户用鼠标在棋盘上单击左键表示落子,然后五子棋AI分析棋局,并在它认...

  • 家有暖儿

    早晨四点醒来,起身去方便时才发现,玻璃门关上了。 记得昨晚上,饭后,和儿子在五子棋盘上厮杀了八个回和。 下五子棋,...

  • 2020-10-03 Java初级项目——从零开始制作一个简易五

    一、棋盘的绘制 使用JFrame容器制作五子棋的窗体 创建一个类——UI,如下: 使用JPanel和Graphic...

  • 稀疏数组

    应用场景 当在编写五子棋程序时 在一个11*11的五子棋棋局中,棋盘使用二维数组进行记录,那就需要定义一个11行1...

网友评论

    本文标题:4.Python画一个五子棋棋盘

    本文链接:https://www.haomeiwen.com/subject/paietktx.html