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

Python Discussion :

créer une fonction pour un rectangle


Sujet :

Python

  1. #21
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    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 762
    Par défaut
    Citation Envoyé par Redelta Voir le message
    donc l'idéal ça serais d'exécuter plusieurs fonctions à la fois pour que les rectangles apparaissent tous en même temps, j'ai entendu parlé de Thread, multithreading... pour exécuter plusieurs fonction a la fois je vais aller me renseigner.
    Arrêter de fumer la moquette: créer plusieurs rectangles et attendre que l'utilisateur ait cliqué dans l'un d'entre eux se fait exactement pareil...

    Citation Envoyé par Redelta Voir le message
    Encore désolé pour certains messages moins compréhensible, je ne maîtrise pas a 100% le langage Python donc j'ai quelques problèmes des fois pour faire comprendre aux autres ce que je veux faire ahah
    Pour l'instant, vous n'avez pas encore assimilé les concepts de boucles, listes et fonction,... Et pour créer, gérer plusieurs objets avec Pygame, ben, vous n'avez pas les bases qui vous permettraient d'avoir une idée de par où commencer.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  2. #22
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 44
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    créer plusieurs rectangles et attendre que l'utilisateur ait cliqué dans l'un d'entre eux se fait exactement pareil...
    Justement, quand je fais appelle plusieurs fois cette fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    rectangle_depart((60,135,150,70),(80,150),'Entree','entree')
    rectangle_depart((60,235,300,70),(80,250),'Couloir administratif','couloir.administratif')
    Il n'y a qu'un seul rectangle qui veut se former, les autres n'apparaissent pas...

    Et je sais que je ne suis pas encore assez expérimenté pour maîtriser ce sujet de pygame à 100%, à la base je voulais rester sur mon idée de base avec la génération à la main de tous les rectangles mais ma prof veut que je fasse avec une fonction comme ceci, que le programme est trop bourratif après donc je n'ai pas trop eu le choix...

  3. #23
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    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 762
    Par défaut
    Citation Envoyé par Redelta Voir le message
    Il n'y a qu'un seul rectangle qui veut se former, les autres n'apparaissent pas...
    Si vous attendez que l'utilisateur ait cliqué sur le rectangle affiché pour passer au suivant plutôt que d'afficher tous les rectangles et trouver sur lequel l'utilisateur à cliqué...

    mais ma prof veut que je fasse avec une fonction comme ceci, que le programme est trop bourratif après donc je n'ai pas trop eu le choix...
    Elle connaît votre niveau de programmation et elle est payée pour vous apprendre comment faire... moi je peux juste vous permettre de mieux comprendre ce que vous avez déjà essayé de comprendre par vous même.
    Si vous n'avez pas potassé boucle, listes, fonctions par vous même: les tutos sont là pour çà...

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #24
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 44
    Par défaut
    Justement, pour moi appeler toutes les fonctions à la suite est censé faire apparaître tous les rectangles... Ma fonction faisant apparaître ces rectangles est terminée normalement donc je vois pas pourquoi les autres rectangles refusent de s'afficher

  5. #25
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    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 762
    Par défaut
    Citation Envoyé par Redelta Voir le message
    Justement, pour moi appeler toutes les fonctions à la suite est censé faire apparaître tous les rectangles...
    Déjà, vous pouvez vous assurez que vos fonctions sont bien appelées en y ajoutant des "print".

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #26
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 44
    Par défaut
    En effet, toutes les fonctions ne sont pas exécutées, seulement la première, donc je me doute qu'il ne faut pas appeler toutes les fonctions les unes à la suite des autres, mais j'ai beau avoir essayé plusieurs choses différentes, je ne vois toujours pas comment cela pourrait marcher, pour moi, le problème vient de la:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    done=False
        while not done:
            for event in pygame.event.get():
                if event.type == MOUSEBUTTONDOWN:
                    if event.button == 1:
                        if clickable_area1.collidepoint(event.pos):
                            fichier=open("trajet.txt","w")
                            fichier.write(text)
                            fichier.close()
                            display.update(ecran.fill(0))
                            fenetre_arrivee()
    étant donné qu'il y a une boucle, le programme n'exécute pas les autres fonctions tant que je ne suis pas sortis de cette boucle, c'est à dire tant que je n'ai pas cliqué sur le premier rectangle. Je me suis imaginé des choses comme un appel récursive dans cette fonction avant la dite boucle pour que les rectangles s'affichent mais je doute que cela fonctionne.

  7. #27
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    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 762
    Par défaut
    Citation Envoyé par Redelta Voir le message
    Je me suis imaginé des choses comme un appel récursive dans cette fonction avant la dite boucle pour que les rectangles s'affichent mais je doute que cela fonctionne.
    Je vous ai déjà suggéré de chercher sur Internet les tutos qui montrent comment on crée des button avec pygame... Après, c'est vous qui voyez.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  8. #28
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 840
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par Redelta Voir le message
    étant donné qu'il y a une boucle, le programme n'exécute pas les autres fonctions tant que je ne suis pas sortis de cette boucle, c'est à dire tant que je n'ai pas cliqué sur le premier rectangle. Je me suis imaginé des choses comme un appel récursive dans cette fonction avant la dite boucle pour que les rectangles s'affichent mais je doute que cela fonctionne.
    Ne cherche pas des trucs compliqués. La récursivité est juste un outil de programmation, pas une solution miracle. Si la fonction attend que tu aies cliqué pour continuer, il est alors normal que tant que tu ne cliques pas, elle ne continue pas. Et même en récursif, elle attendra quand-même que tu cliques pour continuer.

    Donc moi à partir de là, je ne vois qu'une façon de faire:
    1. commencer par dessiner tes 14 rectangles. Bien entendu, tu ne les dessineras pas 14 fois à la main => tu écris une fonction qui en dessine un et tu l'appelles 14 fois
    2. ensuite, une fois dessinés, là tu peux passer en attente de clic

    ...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. [Débutant] Créer une fonction pour un vecteur quelconque
    Par dzdesperado dans le forum MATLAB
    Réponses: 1
    Dernier message: 11/03/2013, 11h28
  2. Créer une fonction pour filtrer un formulaire
    Par Le nettoyeur dans le forum Langage
    Réponses: 36
    Dernier message: 14/02/2013, 11h09
  3. Créer une fonction pour le max de jours d'un mois..
    Par kim mading dans le forum WinDev
    Réponses: 4
    Dernier message: 05/10/2012, 13h51
  4. Créer une fonction pour remplacer des caractères
    Par virtuadrack dans le forum C++
    Réponses: 4
    Dernier message: 11/09/2008, 14h52
  5. Créer une fonction pour un update avec phppgadmin
    Par Peewee766 dans le forum PostgreSQL
    Réponses: 0
    Dernier message: 19/06/2008, 11h56

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