Pb Class
Résolu/Fermé
Ragus99
Messages postés
16
Date d'inscription
vendredi 22 février 2019
Statut
Membre
Dernière intervention
29 novembre 2022
-
21 mai 2019 à 10:32
Ragus99 Messages postés 16 Date d'inscription vendredi 22 février 2019 Statut Membre Dernière intervention 29 novembre 2022 - 21 mai 2019 à 13:56
Ragus99 Messages postés 16 Date d'inscription vendredi 22 février 2019 Statut Membre Dernière intervention 29 novembre 2022 - 21 mai 2019 à 13:56
3 réponses
Ragus99
Messages postés
16
Date d'inscription
vendredi 22 février 2019
Statut
Membre
Dernière intervention
29 novembre 2022
21 mai 2019 à 10:33
21 mai 2019 à 10:33
Je viens de voir que le copier/coller du code n'est pas du tout lisible, le revoici :
# Imports
from tkinter import *
import tkinter.ttk as ttk
""" ******************************
DOCSTRING
Menu de lancement
- """# ____________________________________________________________________________________________________________________# Les variablesvarCoulPrinc = "Slate Gray"varCoulPrinc2 = "Gray"# ____________________________________________________________________________________________________________________# ____________________________________________________________________________________________________________________# Création de l'instance Tkfen0 =Tk()# ____________________________________________________________________________________________________________________# Les fonctionsdef foncChoixNation(event): # Suite choix déroulante liste des nations : affichage dans le label q = lstDeroulNation.get() lab00['text'] = "Vous avez choisi la nation : " + q print(Allemagne.capitale) print(q) q=Allemagne print(q.capitale)# ____________________________________________________________________________________________________________________# Les classesclass nation: nbNation = 0 lstNation = [] def __init__(self, nom, couleur, dirigeant, capitale): global lstNation nation.nbNation += 1 self.nom = nom self.couleur = couleur self.dirigeant = dirigeant self.capitale = capitale # Ajout à la liste des nations pour la liste déroulante nation.lstNation.append(nom)# ____________________________________________________________________________________________________________________# ____________________________________________________________________________________________________________________# MAIN : Lancement du programme Principal# ____________________________________________________________________________________________________________________# Création des nationsAllemagne = nation("Allemagne", "gris", "Otto Von Bismarck", "Berlin")Angleterre = nation("Angleterre", "rouge", "Elisabeth 1ère", "Londres")France = nation("France", "bleu", "Napoléon 1er", "Paris")nbNation = int(nation.nbNation)# _______________________________________# TKinter# _______________________________________# Création fenêtre principalefen0.geometry('500x300')fen0.title("Civ_Fenêtre principale")fen0.configure(bg = varCoulPrinc)# _______________________________________# listes déroulanteslstDeroulNation = ttk.Combobox(fen0, width=16, values=(nation.lstNation))lstDeroulNation.bind('<<ComboboxSelected>>', foncChoixNation)# Création labelslab00 = Label(fen0, text = "",width=50, bg=varCoulPrinc2)# _______________________________________# positionnement objetslstDeroulNation.grid(row=0, columns =1) # Liste déroulante Nationlab00.grid(row=1, columns =2)# Centrage fenêtrefrom Fonctions.FoncCentreEcran import centreFenetrecentreFenetre(fen0)# _______________________________________# Réception d'événementsfen0.mainloop()
Ragus99
Messages postés
16
Date d'inscription
vendredi 22 février 2019
Statut
Membre
Dernière intervention
29 novembre 2022
21 mai 2019 à 10:35
21 mai 2019 à 10:35
et mer**, je recommence :
# Imports
from tkinter import *
import tkinter.ttk as ttk
# ____________________________________________________________________________________________________________________
# Les variables
varCoulPrinc = "Slate Gray"
varCoulPrinc2 = "Gray"
# ____________________________________________________________________________________________________________________
# ____________________________________________________________________________________________________________________
# Création de l'instance Tk
fen0 =Tk()
# ____________________________________________________________________________________________________________________
# Les fonctions
def foncChoixNation(event):
# Suite choix déroulante liste des nations : affichage dans le label
q = lstDeroulNation.get()
lab00['text'] = "Vous avez choisi la nation : " + q
print(Allemagne.capitale)
print(q)
q=Allemagne
print(q.capitale)
# ____________________________________________________________________________________________________________________
# Les classes
class nation:
nbNation = 0
lstNation = []
def __init__(self, nom, couleur, dirigeant, capitale):
global lstNation
nation.nbNation += 1
self.nom = nom
self.couleur = couleur
self.dirigeant = dirigeant
self.capitale = capitale
# Ajout à la liste des nations pour la liste déroulante
nation.lstNation.append(nom)
# ____________________________________________________________________________________________________________________
# ____________________________________________________________________________________________________________________
# MAIN : Lancement du programme Principal
# ____________________________________________________________________________________________________________________
# Création des nations
Allemagne = nation("Allemagne", "gris", "Otto Von Bismarck", "Berlin")
Angleterre = nation("Angleterre", "rouge", "Elisabeth 1ère", "Londres")
France = nation("France", "bleu", "Napoléon 1er", "Paris")
nbNation = int(nation.nbNation)
# _______________________________________
# TKinter
# _______________________________________
# Création fenêtre principale
fen0.geometry('500x300')
fen0.title("Civ_Fenêtre principale")
fen0.configure(bg = varCoulPrinc)
# _______________________________________
# listes déroulantes
lstDeroulNation = ttk.Combobox(fen0, width=16, values=(nation.lstNation))
lstDeroulNation.bind('<<ComboboxSelected>>', foncChoixNation)
# Création labels
lab00 = Label(fen0, text = "",width=50, bg=varCoulPrinc2)
# _______________________________________
# positionnement objets
lstDeroulNation.grid(row=0, columns =1) # Liste déroulante Nation
lab00.grid(row=1, columns =2)
# Centrage fenêtre
from Fonctions.FoncCentreEcran import centreFenetre
centreFenetre(fen0)
# _______________________________________
# Réception d'événements
fen0.mainloop()
Ragus99
Messages postés
16
Date d'inscription
vendredi 22 février 2019
Statut
Membre
Dernière intervention
29 novembre 2022
21 mai 2019 à 13:56
21 mai 2019 à 13:56
POur ceux que ça interesse, il faut créer une bibiothèque :
et l'appeler de cette façon :
# Création des nations
Allemagne = nation("Allemagne", "gris", "Otto Von Bismarck", "Berlin")
Angleterre = nation("Angleterre", "rouge", "Elisabeth 1ère", "Londres")
France = nation("France", "bleu", "Napoléon 1er", "Paris")
nations = {"Allemagne": Allemagne, "Angleterre": Angleterre, "France": France}
et l'appeler de cette façon :
def foncChoixNation(event):
# Suite choix déroulante liste des nations : affichage dans le label
q = lstDeroulNation.get()
lab00['text'] = "Vous avez choisi la nation : " + q
print(nation.lstNation)
print(Allemagne.capitale)
print(q)
print(nations[q].capitale)