Commit 2799deb7 authored by Pauline LEYRIT's avatar Pauline LEYRIT
Browse files

ihm

parent 04d6a904
""
#
#
# import sys
# from PyQt5 import QtGui, QtCore, QtWidgets, uic
#
# from pieces import Piece
# from table_de_jeu import Plateau
#
# # l'approche par héritage simple de la classe QMainWindow (même type de notre fenêtre
# # créée avec QT Designer. Nous configurons après l'interface utilisateur
# # dans le constructeur (la méthode init()) de notre classe
#
# class MonAppli(QtWidgets.QMainWindow):
# def __init__(self):
# super().__init__()
# self.ui = uic.loadUi('siam.ui', self)
# self.painter = QtGui.QPainter()
# self.ui.plateau.paintEvent = self.paintEvent # "dessine_moi" se traduit par paintEvent
#
# #self.resize(9,9)
#
# self.ui.bouton_pousser.clicked.connect(self.pousser)
# self.ui.bouton_entrer.clicked.connect(self.entrer)
# self.ui.bouton_entrerp.clicked.connect(self.entrer_en_poussant)
# self.ui.bouton_tourner.clicked.connect(self.changement_orientation)
# self.ui.bouton_sortit.clicked.connect(self.sortir)
# self.ui.bouton_deplacer.clicked.connect(self.changement_position)
#
# self.jeux = Plateau(xmax=self.ui.plateau.width(), ymax=self.ui.plateau.height(), nb_montagne=3, joueur1='Theo', joueur2='Pauline')
#
#
# pixmap = QtGui.QPixmap("plateau9x7.PNG")
# pal = QtGui.QPalette()
# pal.setBrush(QtGui.QPalette.Background, QtGui.QBrush(pixmap))
# self.ui.plateau.lower()
# self.ui.plateau.stackUnder(self)
# self.ui.plateau.setAutoFillBackground(True)
# self.ui.plateau.setPalette(pal)
#
#
# def pousser(self):
# print("je pousse")
# self.ui.plateau.update() # la méthode update génère l'évènement paintEvent qui lui-même appelle la méthode draw_ecosys
# self.jeux.jouer()
# # self.jeux.unTour()
#
# def entrer(self):
# print("j'entre")
# self.ui.plateau.update()
# #i, j = self.mousePressEvent
#
# print (i,j)
# # if self.ui.plateau.mousePressEvent[0] in [0,1,2,3,4] and self.ui.plateau.mousePressEvent[1] in [0,1,2,3,4]:
# # print ('la piece est déjà rentrée sur le plateau')
# #
# #
# # else:
# # bool = True
# # while bool :
# # i= int(input('entrer la nouvelle abscisse : '))
# # j = int(input('entrer la nouvelle ordonnée : '))
# #
# # if (i == 0 or i == 4) or (j == 4 or j ==0) :
# # self.coords = i, j
# # self.changement_orientation()
# # self.tour_effectué = True
# #
# # bool = False
# # else :
# # print ('une pièce ne peut entrer sur le plateau que sur une case extérieure : rééssayez ')
# #
# # print("votre pièce %c%i est entrée à la position %s, orientée vers %c" % (
# # self.car(),self.numero, self.coords, self.orientation))
#
# def entrer_en_poussant(self):
# print("j'entre en poussant")
# self.ui.plateau.update()
# self.jeux.jouer()
#
# def changement_orientation(self):
# print("je tourne")
# self.ui.plateau.update()
# self.plateau.jouer()
#
# def sortir(self):
# print("je sors")
# self.ui.plateau.update()
# self.plateau.jouer()
#
# def changement_position(self):
# print("je bouge")
# self.ui.plateau.update()
# self.plateau.jouer()
#
# def mousePressEvent(self, e):
# largeur_case = 36.77777778
# hauteur_case = 37.2857142
# # Les coordonnées du point cliqué sont e.x() et e.y()
#
# # Transformation des coordonnées écran en coordonnées dans
# # # le plateau de jeu
# i = e.x() // largeur_case - 6
# j = e.y() // hauteur_case - 3
# # # Vérification
#
# # print('Vous avez cliqué sur la case : ', ((i,j))
#
# # On réaffiche
# self.repaint()
# print(i,j)
# #return [i,j]
#
# def paintEvent(self, e):
# p = QtGui.QPainter(self.ui.plateau)
# p.setBrush(QtGui.QBrush(QtCore.Qt.SolidPattern))
# # Dessin de la grille
# largeur_case = self.ui.plateau.width() // 9
# hauteur_case = self.ui.plateau.height() // 7
# for i in range(10):
# p.drawLine(0, i * hauteur_case, self.width(), i * hauteur_case)
# for i in range(8):
# p.drawLine(i * largeur_case, 0, i * largeur_case,self.height())
#
# # Dessin des pions
# # On parcourt la représentation du jeu et on affiche
# for i in range(5):
# p.setPen(QtCore.Qt.red)
# p.drawEllipse(0* largeur_case, (i+1) * hauteur_case,
# largeur_case, hauteur_case)
# p.setPen(QtCore.Qt.green)
# p.drawEllipse(8* largeur_case, (i+1) * hauteur_case,
# largeur_case, hauteur_case)
#
# # # variable intermédiraire pour alléger le code
# # qp = self.painter
# # # boucle pour parcourir les pions et gérer les images (vu ci-dessus)
# # for pion in self.jeux:
# # if pion.car() == 'R':
# # qp.setPen(QtCore.Qt.red) # définir la couleur du pinceau
# # qp.drawEllipse(pion.abscisse, pion.ordonnee, 5, 5)
# # else:
# # qp.setPen(QtCore.Qt.green)
# # qp.drawRect(pion.abscisse, pion.ordonnee, 5, 5)
# #
# # # on informe le peintre qu'on a fini
# # self.painter.end()
#
#
#
#
# if __name__ == "__main__":
# app = QtWidgets.QApplication(sys.argv)
# window = MonAppli()
# window.show()
# sys.exit(app.exec_())
#
# from PyQt5.QtWidgets import QApplication, QMainWindow, QGraphicsScene, QPushButton, QGraphicsView, QGraphicsItem
# from PyQt5.QtGui import QBrush, QPen, QFont
# from PyQt5.QtCore import Qt
# import sys
#
#
# class Window(QMainWindow):
# def __init__(self):
# super().__init__()
#
# self.setWindowTitle("Pyside2 QGraphic View")
# self.setGeometry(300, 200, 640, 520)
#
# self.create_ui()
#
# self.show()
#
# def create_ui(self):
# button = QPushButton("Rotate - ", self)
# button.setGeometry(200, 450, 100, 50)
# button.clicked.connect(self.rotate_minus)
#
# button2 = QPushButton("Rotate + ", self)
# button2.setGeometry(320, 450, 100, 50)
# button2.clicked.connect(self.rotate_plus)
#
# scene = QGraphicsScene(self)
#
# greenBrush = QBrush(Qt.green)
# blueBrush = QBrush(Qt.blue)
#
# blackPen = QPen(Qt.black)
# blackPen.setWidth(5)
#
# ellipse = scene.addEllipse(10, 10, 200, 200, blackPen, greenBrush)
#
# rect = scene.addRect(-100, -100, 200, 200, blackPen, blueBrush)
#
# scene.addText("Codeloop.org", QFont("Sanserif", 15))
#
# ellipse.setFlag(QGraphicsItem.ItemIsMovable)
# rect.setFlag(QGraphicsItem.ItemIsMovable)
#
# self.view = QGraphicsView(scene, self)
# self.view.setGeometry(0, 0, 640, 440)
#
# def rotate_minus(self):
# self.view.rotate(-14)
#
# def rotate_plus(self):
# self.view.rotate(14)
#
#
# app = QApplication(sys.argv)
# window = Window()
# sys.exit(app.exec_())
from PyQt5.QtWidgets import *
import sys
from PyQt5 import QtGui, QtCore, QtWidgets, uic
from interface import Ui_Siam
from pieces import Piece
from table_de_jeu import Plateau
# l'approche par héritage simple de la classe QMainWindow (même type de notre fenêtre
# créée avec QT Designer. Nous configurons après l'interface utilisateur
# dans le constructeur (la méthode init()) de notre classe
class MonAppli(QtWidgets.QMainWindow):
class Window(QWidget):
def __init__(self):
super().__init__()
self.ui = uic.loadUi('C:/Users/33651/siam1/siam.ui', self)
self.painter = QtGui.QPainter()
self.ui.plateau.paintEvent = self.paintEvent # "dessine_moi" se traduit par paintEvent
#self.resize(9,9)
self.ui.bouton_pousser.clicked.connect(self.pousser)
self.ui.bouton_entrer.clicked.connect(self.entrer)
self.ui.bouton_entrerp.clicked.connect(self.entrer_en_poussant)
self.ui.bouton_tourner.clicked.connect(self.changement_orientation)
self.ui.bouton_sortit.clicked.connect(self.sortir)
self.ui.bouton_deplacer.clicked.connect(self.changement_position)
self.jeux = Plateau(xmax=self.ui.plateau.width(), ymax=self.ui.plateau.height(), nb_montagne=3, joueur1='Theo', joueur2='Pauline')
pixmap = QtGui.QPixmap("plateau9x7.PNG")
pal = QtGui.QPalette()
pal.setBrush(QtGui.QPalette.Background, QtGui.QBrush(pixmap))
#self.ui.plateau.lower()
#self.ui.plateau.stackUnder(self)
self.ui.plateau.setAutoFillBackground(True)
self.ui.plateau.setPalette(pal)
def pousser(self):
print("je pousse")
self.ui.plateau.update() # la méthode update génère l'évènement paintEvent qui lui-même appelle la méthode draw_ecosys
self.jeux.jouer()
# self.jeux.unTour()
def entrer(self):
print("j'entre")
self.ui.plateau.update()
self.jeux.jouer()
def entrer_en_poussant(self):
print("j'entre en poussant")
self.ui.plateau.update()
self.jeux.jouer()
def changement_orientation(self):
print("je tourne")
self.ui.plateau.update()
self.plateau.jouer()
def sortir(self):
print("je sors")
self.ui.plateau.update()
self.plateau.jouer()
def changement_position(self):
print("je bouge")
self.ui.plateau.update()
self.plateau.jouer()
def mousePressEvent(self, e):
largeur_case = self.ui.plateau.width() // 9
hauteur_case = self.ui.plateau.height() // 7
# Les coordonnées du point cliqué sont e.x() et e.y()
# Transformation des coordonnées écran en coordonnées dans
# le plateau de jeu
j = e.x() // largeur_case - 4
i = e.y() // hauteur_case - 2
# Vérification
print('Vous avez cliqué sur la case : ', (i, j))
QWidget.__init__(self)
layout = QGridLayout()
self.setLayout(layout)
radiobutton = QRadioButton("Australia")
radiobutton.setChecked(True)
radiobutton.country = "Australia"
radiobutton.toggled.connect(self.onClicked)
layout.addWidget(radiobutton, 0, 0)
if e.button() == QtGui.LeftButton:
e.accept()
self.expanded ^= True
self.toggled.emit(self)
self.update()
else:
return QtGui.mousePressEvent(self, e)
radiobutton = QRadioButton("China")
radiobutton.country = "China"
radiobutton.toggled.connect(self.onClicked)
layout.addWidget(radiobutton, 0, 1)
# On réaffiche
self.repaint()
radiobutton = QRadioButton("Japan")
radiobutton.country = "Japan"
radiobutton.toggled.connect(self.onClicked)
layout.addWidget(radiobutton, 0, 2)
def paintEvent(self, e):
p = QtGui.QPainter(self.ui.plateau)
p.setBrush(QtGui.QBrush(QtCore.Qt.SolidPattern))
# Dessin de la grille
largeur_case = self.ui.plateau.width() // 9
hauteur_case = self.ui.plateau.height() // 7
for i in range(10):
p.drawLine(0, i * hauteur_case, self.width(), i * hauteur_case)
for i in range(8):
p.drawLine(i * largeur_case, 0, i * largeur_case,self.height())
def onClicked(self):
radioButton = self.sender()
if radioButton.isChecked():
print("Country is %s" % (radioButton.country))
self.painter.begin(self.ui.plateau)
# variable intermédiraire pour alléger le code
qp = self.painter
# boucle pour parcourir les pions et gérer les images (vu ci-dessus)
for pion in self.jeux:
if pion.car() == 'R':
qp.setPen(QtCore.Qt.red) # définir la couleur du pinceau
qp.drawEllipse(pion.abscisse, pion.ordonnee, 5, 5)
else:
qp.setPen(QtCore.Qt.green)
qp.drawRect(pion.abscisse, pion.ordonnee, 5, 5)
# on informe le peintre qu'on a fini
self.painter.end()
# Dessin des pions
# On parcourt la représentation du jeu et on affiche
# for i in range(3):
# for j in range(3):
# if jeu[i][j] !=0:
# if jeu[i][j] == 1:
# p.setBrush(QtGui.QColor(255, 0, 0))
# else:
# p.setBrush(QtGui.QColor(255, 255, 0))
# p.drawEllipse(j * largeur_case, i * hauteur_case,
# largeur_case, hauteur_case)
layout = QGridLayout()
droite = QRadioButton("Button1")
droite.setChecked(True)
#droite.toggled.connect(lambda: self.btnstate(self.droite))
layout.addWidget(droite)
gauche = QRadioButton("Button2")
#gauche.toggled.connect(lambda: self.btnstate(self.gauche))
layout.addWidget(gauche)
self.setLayout(layout)
layout.addWidget(gauche)
self.setLayout(layout)
scene = QGraphicsScene(self)
self.view = QGraphicsView(scene, self)
self.view.setGeometry(0, 0, 640, 440)
# app = QApplication(sys.argv)
# screen = Window()
# screen.show()
# sys.exit(app.exec_())
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
window = MonAppli()
window.show()
app.exec_()
print(-65//60)
\ No newline at end of file
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment