Ejemplo n.º 1
0
    def board(self):

        newAction = QtGui.QAction('&New game', self)
        newAction.setShortcut('Ctrl+N')
        newAction.setShortcutTip('Make a new game')
        newAction.triggered.connect(self.new_game)

        # add an exit feature
        exitAction = QtGui.QAction('&Leave', self)
        exitAction.setShortcut('Ctrl+Q')
        exitAction.triggered.connect(self.close_application)

        self.statusBar()

        # menu part of exit feature
        mainMenu = self.menuBar()
        fileMenu = mainMenu.addMenu('&File')

        # new game feature
        fileMenu.addAction(newAction)

        # exit
        fileMenu.addAction(exitAction)

        # set up game board
        self.btn0 = QtGui.QPushButton('', self) # first argument is the text
        self.btn0.clicked.connect(lambda: self.clicked(1, self.playerCoin))
        self.btn0.resize(100,100)
        self.btn0.move(20,280)

        self.btn1 = QtGui.QPushButton('', self)
        self.btn1.clicked.connect(lambda: self.clicked(2, self.playerCoin))
        self.btn1.resize(100,100)
        self.btn1.move(240,280)

        self.btn2 = QtGui.PushButton('', self)
        self.btn2.clicked.connect(lambda: self.clicked(2, self.playerCoin))
        self.btn2.resize(100,100)
        self.btn2.move(240,280)

        self.btn3 = QtGui.QPushButton('', self)
        self.btn3.clicked.connect(lambda: self.clicked(3, self.playerCoin))
        self.btn3.resize(100,100)
        self.btn3.move(20,170)

        self.btn4 = QtGui.QPushButton('', self)
        self.btn4.clicked.connect(lambda: self.clicked(4, self.playerCoin))
        self.btn4.resize(100,100)
        self.btn4.move(130,170)

        self.btn5 = QtGui.QPushButton('', self)
        self.btn5.clicked.connect(lambda: self.clicked(5, self.playerCoin))
        self.btn5.resize(100,100)
        self.btn5.move(240,170)

        self.btn6 = QtGui.QPushButton('', self)
        self.btn6.clicked.connect(lambda: self.clicked(6, self.PlayerCoin))
        self.btn6.resize(100,100)
        self.btn6.move(20,60)

        self.btn7 = QtGui.QPushButton('', self)
        self.btn7.clicked.connect(lambda: self. clicked(7, self.playerCoin))
        self.btn7.resize(100,100)
        self.btn7.move(130,60)

        self.btn8 = QtGui.QPushButton('', self)
        self.btn8.clicked.connect(lambda: self.clicked(8, self.playerCoin))
        self.btn8.resize(100,100)
        self.btn8.move(240,60)

        # list of taken move positions
        self.taken = [0, 0, 0, 0, 0, 0, 0, 0, 0]
        self.takenBy = [0, 0, 0, 0, 0, 0, 0, 0, 0]

        self.btnDict = { 0 : lambda x : (self.btn0.setText(x), self.btn0.setFont(QtGui.QFont('Times', 60))),
                1 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                2 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                3 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                4 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                5 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                6 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                7 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                8 : lambda x : (self.btn1.setText(x), self.btn1.setFont(QtGui.QFont('Times', 60))),
                    }
        # this should always be last
        self.show()