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 un input ou entry avec plusieurs lignes


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut Créer un input ou entry avec plusieurs lignes
    S'il vous plait j’aimerais crée un petit programme ou l'on peut écrire un texte et l’envoyer pars mail...
    J'ai déjà fait la partie mail mais je n'arrive pas a crée un champ de saisie en plusieurs ligne colle .
    merci pour votre aide .
    Images attachées Images attachées  

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par mael__56 Voir le message
    J'ai déjà fait la partie mail mais je n'arrive pas a crée un champ de saisie en plusieurs ligne colle .
    Ouvrez n'importe quelle documentation sur le widget Entry, vous devriez y trouver que pour saisir ou afficher plusieurs lignes, le widget Text est plus approprié.

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

  3. #3
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    Bonjour pourriez vous m’envoyer un petit bloc de code de base je le modifierais...
    J'ai déjà utiliser le widget texte mais plus comme un print et non comme un input ou un entry peut il retourner le texte pour le stocker dans une variable .
    merci

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par mael__56 Voir le message
    pourriez vous m’envoyer un petit bloc de code de base je le modifierais...
    Si vous voulez utilisez le widget Text, il faut commencer par ouvrir la documentation sans être effrayé du tas de chose que vous y trouvez.

    Puis vous réfléchissez un peu à votre cas d'utilisation. En gros, l'utilisateur va pouvoir saisir du texte jusqu'à ce qu'il clique sur un Button de validation. C'est le callback/commande associé qui va s'occuper de récupérer les informations dans les différents champs (y compris le contenu du widget Text).

    Pour ce faire, la méthode est .get qui prend deux index en paramètre.
    Vous avez repéré où çà explique ce que sont les index....
    Et pour vous assurer que vous avez assez bien compris ce que çà raconte pour l'appliquer à votre cas, vous lancez la console Python, vous créez un widget Text, vous y insérez des lignes, et vous essayez de les récupérer avec .get.

    Et à la fin non seulement vous aurez la réponse à votre question mais en plus vous serez un peu plus confiante côté utilisation de la documentation (i.e. le boulot de base du programmeur).
    note: et si vous n'arrivez pas à faire fonctionner un truc aussi simple, vous aurez du code à poster pour montrer comment vous vous y prenez.

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

  5. #5
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    merci j’essaye ...

  6. #6
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    j’ai essayer le bloc suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    from tkinter import *
     
    fen= Tk()
     
    input_mail = Text(fen, width=50, height=5)
     
    fen.mainloop()


    Mais j'ai eu une page blanche classique

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    C'est un bon début: on peut supposer que c'est à l'utilisateur de remplir cette page blanche.
    Pour le reste, ou est le Button qui permet à l'utilisateur de signaler qu'il a terminé sa saisie?
    Où est le callback déclenché par l'action sur ce Button qui va lire ce qui a été saisi?

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

  8. #8
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    Le problème c'est que je ne peut pas remplir la page blanche ...
    Pour le Button qui permet à l'utilisateur de signaler qu'il a terminé sa saisie et le callback je ne sais pas comment mis prendre, avez vous une documentation?
    Merci

  9. #9
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par mael__56 Voir le message
    Pour le Button qui permet à l'utilisateur de signaler qu'il a terminé sa saisie et le callback je ne sais pas comment mis prendre, avez vous une documentation?
    Si vous voulez faire des choses compliquées avant d'avoir appris à réaliser des trucs aussi simples, sûr que ce n'est pas facile mais si vous n'avez pas encore pris le temps d'ouvrir un tuto. pour apprendre les bases de la programmation avec tkinter, il est temps de s'y mettre. Le Swinnen est peut être fait pour vous.

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

  10. #10
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    Le bock de code :
    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
     
    from tkinter import *
     
    fen= Tk()
     
    def print_mail(event): 
    	text.get()
     
     
    input_mail = Text(fen, width=50, height=5)
     
    v = input_mail.bind("<Return>", print_mail)
    b0 = Button(fen, text="Valider", command=v)
    b1 = Button(fen, text="OK", command=fen.destroy) 
     
    input_mail.pack(side = TOP)
    b0.pack(side = BOTTOM)
    b1.pack(side = BOTTOM)
     
    fen.mainloop()


    Le résultat : j’obtiens une fenêtre avec un possibilité de saisie de 5 ligne avec en bas 2 bouton, le bouton OK fonction mais pas VALIDER ...
    Merci d'avance

  11. #11
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Super, on y est presque.

    Le résultat : j’obtiens une fenêtre avec un possibilité de saisie de 5 ligne avec en bas 2 bouton, le bouton OK fonction mais pas VALIDER ..
    .

    Je ne comprends pas ce que vous essayez de faire avec v = input_mail.bind("<Return>", print_mail). En tous cas, si vous voulez qu'un appui sur "Valider" appelle la fonction "print_mail", çà serait plus simple de lui passer cette fonction là en argument de "command", non?

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

  12. #12
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    Je veux juste que quand l'utilisateur presse entre ce qui a été saisie dans le widjet text (le mail) sois stocker dans une variable mail et que en meme temps l'utilisateur est finis ...

  13. #13
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par mael__56 Voir le message
    Je veux juste que quand l'utilisateur presse entre ce qui a été saisie dans le widjet text (le mail) sois stocker dans une variable mail et que en meme temps l'utilisateur est finis ...
    <Return> est déjà ce qu'il doit taper pour entrer la deuxième ligne. Si la saisie s'arrête là, pas la peine de lui faire croire qu'il peut en entrer 5 ou plus.

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

  14. #14
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    OK j'avais mal compris car le mail fera en principe plus d'une ligne .
    Je n'arrive pas a stocker la valeur du widjet text dans une variable par l'intermédiaire du bouton valider ...

  15. #15
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par mael__56 Voir le message
    Je n'arrive pas a stocker la valeur du widjet text dans une variable par l'intermédiaire du bouton valider ...
    Si vous ne postez pas le code, pas facile de voir comment vous avez essayé de faire çà...
    En tous cas, dans le code que vous avez posté, il n'y a même pas l'intention (où est la variable?).

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

  16. #16
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    code:

    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
    from tkinter import *
    root=Tk()
     
    def recupere_input():
        Valeur_input = textBox.get("1.0","end-1c")
        mail = Valeur_input
        print(mail)
     
    textBox = Text(root, height=10, width=75)
    textBox.pack()
     
    button_valider=Button(root, height=1, width=10, text="Valider", command = lambda: recupere_input())
    button_quiter=Button(root, height=1, width=10, text="Quitter", command = root.destroy)    
    button_valider.pack()
    button_quiter.pack()
     
    mainloop()


    résultat: ça fonction mail est bien printer mais je n'arrive pas a récupérer sa valeur dans le programme principale, ni avec return ni avec global(pour pouvoir envoyer sa valeur)...

  17. #17
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par mael__56 Voir le message
    résultat: ça fonction mail est bien printer mais je n'arrive pas a récupérer sa valeur dans le programme principale, ni avec return ni avec global(pour pouvoir envoyer sa valeur)...
    Lorsque vous écrivez un programme avec une interface graphique comme tkinter, le programme principal se termine par l'équivalent de tk.mainloop() i.e. l'attente d'évènements qui vont déclencher l'appel de "callbacks" (ainsi nommés parce que s'ils sont fabriqués comme des fonctions, ils ne sont pas appelés par le programme mais par l'interface graphique: impossible de récupérer ce que çà retourne, on peut juste stocker des informations dans des variables globales).

    Dans le tuto. que je vous ai mentionné çà parle de programmation pilotée par les évènements. C'est une autre façon de programmer que la programmation séquentielle que vous connaissez. Et çà demande du temps pour arriver à penser correctement la construction de ses programmes. D'où l'intérêt des tutos. (qu'il ne faut pas se contenter de survoler mais prendre le temps d'apprendre en faisant les exercices proposés,...)

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

  18. #18
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Janvier 2018
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2018
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    Vous ne pouvez pas m'expliquer ?

  19. #19
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par mael__56 Voir le message
    Vous ne pouvez pas m'expliquer ?
    Que voulez vous que j'explique? La programmation pilotée par les évènements? C'est dans le tuto. que je vous ai déjà indiqué.

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

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

Discussions similaires

  1. [MySQL] Comment affiché un résultat avec plusieurs lignes et plusieurs champs dans un tableau
    Par Yagami_Raito dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 15/05/2007, 14h19
  2. Champ text avec plusieurs lignes ?
    Par Death83 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 17/10/2006, 11h42
  3. Créer un fond d'écran avec plusieurs clips (images)
    Par arnaud_verlaine dans le forum Flash
    Réponses: 3
    Dernier message: 29/08/2006, 11h45
  4. [Tkinter] Un entry a plusieurs lignes
    Par mcdonald dans le forum Tkinter
    Réponses: 4
    Dernier message: 20/11/2005, 22h57
  5. Réponses: 1
    Dernier message: 04/05/2005, 11h43

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