IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tkinter Python Discussion :

Aide pour un projet (tkinter)


Sujet :

Tkinter Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Mars 2021
    Messages : 12
    Points : 7
    Points
    7
    Par défaut Aide pour un projet (tkinter)
    Bonjour, je souhaite créé un tableau graphiques en deux dimensions découpés en cases à l'aide de tkinter. Je souhaite aussi que chaque case soit stockés sous forme de coordonnées.
    Je sais qu'il faut faire des listes compréhension mais je sais pas du tout comment m'y prendre. Quelqu'un pourrait m'aidé svp ?

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 333
    Points : 36 853
    Points
    36 853
    Par défaut
    Salut,

    Citation Envoyé par ismaa Voir le message
    je sais pas du tout comment m'y prendre. Quelqu'un pourrait m'aidé svp ?
    On veut bien essayer de vous aider mais, soit vous ne savez vraiment pas par où commencer et ouvrir un tuto. pour voir ce qu'on peut faire avec tkinter est nécessaire, soit vous montrez un peu ce que vous avez essayé de faire et on peut essayer de comprendre la difficulté que vous rencontrez.

    Citation Envoyé par ismaa Voir le message
    Je sais qu'il faut faire des listes compréhension
    C'est une façon plus concise de faire des opérations sur les listes que les opérations de bases. Si vous ne maîtrisez pas encore, vous devriez pouvoir vous en passer.

    - W

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Mars 2021
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Bonjour effectivement j'aurais dû envoyer ce que j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    def tableau():
        grille = [[0 for i in range(NB_COl)] for j in range(NB_LINE)]
        print(grille)
    tableau()
    c'est ce que j'ai fait pour l'instant mais je sais pas du tout comment l'adapter à Tkinter pour pouvoir créer des cases et ensuite les stocker.

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 333
    Points : 36 853
    Points
    36 853
    Par défaut
    Citation Envoyé par ismaa Voir le message
    c'est ce que j'ai fait pour l'instant mais je sais pas du tout comment l'adapter à Tkinter pour pouvoir créer des cases et ensuite les stocker.
    C'est juste parce que vous avez sauté les chapitres de votre tuto. préféré qui traitent des listes de listes (tableau) et autres boucles imbriquées. Pour çà, tkinter n'a aucune importance mais si vous ne savez pas... vous ne pouvez pas "inventer" mais juste apprendre.

    - W

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Mars 2021
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    C'est juste parce que vous avez sauté les chapitres de votre tuto. préféré qui traitent des listes de listes (tableau) et autres boucles imbriquées. Pour çà, tkinter n'a aucune importance mais si vous ne savez pas... vous ne pouvez pas "inventer" mais juste apprendre.

    - W
    Je sais comment marche tkinter mais je sais juste pas comment appliqués les listes pour pouvoir créé des cases, je suis débutant et c'est donc très abstrait pour moi.

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 333
    Points : 36 853
    Points
    36 853
    Par défaut
    Citation Envoyé par ismaa Voir le message
    je suis débutant et c'est donc très abstrait pour moi.
    J'en suis conscient, c'est pour çà que dans les tuto. les chapitres qui parlent des listes sont avant ceux qui parlent de tkinter...
    Alors si vous les avez zappés, c'est pas un problème tkinter ou de programmation Python mais plutôt quant à votre démarche d'apprentissage.
    Et si vous ne comprenez pas que programmer c'est maîtriser des concepts simples pour faire des choses un peu plus compliquées en les composant... ben, je ne peux rien pour vous.


    - W

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Mars 2021
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    J'en suis conscient, c'est pour çà que dans les tuto. les chapitres qui parlent des listes sont avant ceux qui parlent de tkinter...
    Alors si vous les avez zappés, c'est pas un problème tkinter ou de programmation Python mais plutôt quant à votre démarche d'apprentissage.
    Et si vous ne comprenez pas que programmer c'est maîtriser des concepts simples pour faire des choses un peu plus compliquées en les composant... ben, je ne peux rien pour vous.


    - W
    Effectivement j'étais mal renseigné.
    J'ai maintenant fais un tableau a double dimension remplis de 0 mais je voudrais qu'une partie de ce tableau sois remplis de 1 car je souhaite en faire une utilisation graphique avec tkinter . Vous auriez des idées pour m'aider svp ?

  8. #8
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 333
    Points : 36 853
    Points
    36 853
    Par défaut
    Salut,

    Citation Envoyé par ismaa Voir le message
    J'ai maintenant fais un tableau a double dimension remplis de 0 mais je voudrais qu'une partie de ce tableau sois remplis de 1
    Je ne suis pas dans votre tête: comment savoir où il mettre un 1 ou pas? Puis remplir une partie d'un tableau avec des 1, c'est énumérer les indices (i, j) ou mettre ces 1.

    Citation Envoyé par ismaa Voir le message
    Vous auriez des idées pour m'aider svp ?
    Si déjà vous ne savez pas trop formuler en français ce que vous voulez faire... il ne va pas être facile de traduire çà en Python. Et si vous n'avez pas de code à poster montrant un minimum ce que vous avez essayé de faire, je ne vois pas trop.

    - W

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2021
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Mars 2021
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    En gros ce que je veux faire c'est faire un automate cellulaire. Pour ça je dois faire un tableau de 0 ou de 1 sauf que je ne sais pas comment m'y prendre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    import tkinter as tk
     
    ################################ INITIALISATION
    screen = tk.Tk()
    screen.title("avion")
     
    ################################# CONSTANTES
    SIEGES = "steel blue"
    COULOIR = "light steel blue"
    ZERO_BAGEGE = "yellow"
    UN_BAGAGE = "orange"
    DEUX_BAGAGES = "red"
    PLACE = "green"
    LARGEUR = 140
    HAUTEUR = 600
    # la longeur des carrés qui constituent le quadrillage
    COTE = 20
    NB_COl = LARGEUR // COTE
    NB_LINE = HAUTEUR // COTE
     
    tableau = None
     
    ################################# FONCTIONS
    def sieges_couloir():
        global COTE, SIEGES, COULOIR
        """Création des sièges et du couloir de l'avion"""
        for i in range (7):
            for j in range (30):
                    carré = canvas.create_rectangle(i*COTE, j*COTE, (1+i)*COTE, (1+j)*COTE, fill = SIEGES)
                    if i == 3:
                        canvas.itemconfig(carré, fill = COULOIR)
     
    def coordonnées_lignes_colonnes():
        """Fonction qui retourne la colonne et la ligne dans l'avion
        grâce aux coordonnées de x et y"""
        return x // COTE, y // COTE
     
     
    def tableau_2D():
        """Création d'un tableau à deux dimension permettant de connaître
        le rôle de chaque celule, le couloir est initilisé à 0, tandis
        que les sièges sont initialisés à 1"""
        global tableau
        tableau = []
        for i in range(NB_COl):
            if i == 3:
                tableau.append([0]*NB_LINE) #couloir
            else:
                tableau.append([1]*NB_LINE) #sièges
     
     
    def voisins():
        """Retourne si un passager à un voisin devant ou derrière lui
        dans le couloir de l'avion"""
     
     
    ################################# PROGRAMME PRINCIPALE
    canvas = tk.Canvas(screen, width = 140, height = 600, borderwidth=0, highlightthickness=0, bg = "black")
    sieges_couloir()
     
     
    ################################# PLACEMENT DES WIDGETS
    canvas.grid(column = 0, row = 0)
     
    ################################# FIN DE LA BOUCLE

  10. #10
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 333
    Points : 36 853
    Points
    36 853
    Par défaut
    Salut,

    Citation Envoyé par ismaa Voir le message
    En gros ce que je veux faire c'est faire un automate cellulaire. Pour ça je dois faire un tableau de 0 ou de 1 sauf que je ne sais pas comment m'y prendre.
    Ben, vous cherchez sur Internet des codes d'automates cellulaires (et il y en a plein qui affichent leurs grilles via tkinter). Certains viennent avec des tutos. sinon, c'est du code à lire, à comprendre....et éventuellement s'en inspirer (voir par exemple parmi - tant - d'autres)

    "je ne sais pas comment m'y prendre", c'est comme dire "à l'aide"... mais çà n'aide pas à savoir la difficulté que vous rencontrez et ce qu'on peut essayer de vous expliquer.

    - W

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Besoin d'aide pour un projet en vb6
    Par Tyrael62 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 14/01/2006, 05h25
  2. de l'aide pour un projet svp!!!!
    Par lamoon dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 09/01/2006, 15h45
  3. Besoin d'aide pour un projet
    Par ZiMo dans le forum Linux
    Réponses: 9
    Dernier message: 24/10/2005, 00h28
  4. Besoin d'aide pour un projet de jeu en ligne
    Par FLEO dans le forum Projets
    Réponses: 1
    Dernier message: 21/10/2005, 08h55
  5. [CAML] Recherche aide pour un projet
    Par tarzoon dans le forum Caml
    Réponses: 1
    Dernier message: 02/09/2005, 10h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo