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 :

questions a propos de text


Sujet :

Tkinter Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 4
    Points : 13
    Points
    13
    Par défaut questions a propos de text
    bonjour,

    J'ai des problemes avec create_text , déjà je n'arrive pas a mettre mon attribut wrap pour couper les phrases par mots et pas par lettres.
    Puis j'ai besoin de vider mon text, mais je n'y arrive pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    canAll = Canvas(root) 
     
    #Creation du text vide
    canvas_id = canAll.create_text(130, 260, anchor="nw", width = 120)#, wrap= WORD) #fonctionne pas avec wrap
    canAll.itemconfig(canvas_id, text="")

    Apres avoir inséré des choses dans mon text avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    canAll.insert(canvas_id, END, " blabla\n")
    J'essaie de detruire le texte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     #essai destruction, reconstruction d'un text vide... bref marche pas
    #canAll.delete(canvas_id,0.0, END)
    #canvas_id.delete(1.0, END)
    #canvas_id = canAll.create_text(130, 260, anchor="nw", width = 120) 
    #canvas_id['text'] = ' '
    Voila je veux bien un peu d'aide si possible. Merci bien, et bonne soirée

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Moloumo Voir le message
    bonjour,

    J'ai des problemes avec create_text , déjà je n'arrive pas a mettre mon attribut wrap pour couper les phrases par mots et pas par lettres.
    Puis j'ai besoin de vider mon text, mais je n'y arrive pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    canAll = Canvas(root) 
     
    #Creation du text vide
    canvas_id = canAll.create_text(130, 260, anchor="nw", width = 120)#, wrap= WORD) #fonctionne pas avec wrap
    canAll.itemconfig(canvas_id, text="")

    Apres avoir inséré des choses dans mon text avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    canAll.insert(canvas_id, END, " blabla\n")
    J'essaie de detruire le texte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     #essai destruction, reconstruction d'un text vide... bref marche pas
    #canAll.delete(canvas_id,0.0, END)
    #canvas_id.delete(1.0, END)
    #canvas_id = canAll.create_text(130, 260, anchor="nw", width = 120) 
    #canvas_id['text'] = ' '
    Voila je veux bien un peu d'aide si possible. Merci bien, et bonne soirée
    Bonjour,

    La documentation officielle Tkinter, c'est en anglais, mais vous y avez tout :

    http://infohost.nmt.edu/tcc/help/pub...eate_text.html

    http://infohost.nmt.edu/tcc/help/pub...s-methods.html

    http://infohost.nmt.edu/tcc/help/pub...web/index.html

    Autre chose : pour que le code soit CLAIR et facile à comprendre, choisissez le BON NOM pour le BON OBJET :

    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
     
    # un canevas c'est un canevas
    canAll = Canvas(root) 
    # pourquoi chercher midi à 14h?
    canvas = Canvas(root)
     
    # vous créez un élément TEXTE dans votre canevas
    #Creation du text vide
    canvas_id = canAll.create_text(130, 260, anchor="nw", width = 120)#, wrap= WORD) #fonctionne pas avec wrap
    # identifiez-le comme un texte
    text_id = canvas.create_text(...etc...)
    # vous savez vider votre texte la première fois:
    canAll.itemconfig(canvas_id, text="")
    canvas.itemconfigure(text_id, text="")
    # ... mais plus la seconde fois?
     #essai destruction, reconstruction d'un text vide... bref marche pas
    #canAll.delete(canvas_id,0.0, END)
    #canvas_id.delete(1.0, END)
    #canvas_id = canAll.create_text(130, 260, anchor="nw", width = 120) 
    #canvas_id['text'] = ' ' 
    # pourquoi ça ne marcherait plus?
    canvas.itemconfigure(text_id, text="")
    Celui qui est clair dans sa tête produit un code clair, mais celui qui étudie du code clair y voit lui-même plus clair dans sa tête.
    @+.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 4
    Points : 13
    Points
    13
    Par défaut
    Bonjour, merci de m'avoir répondu

    Désolé si mon code était pas clair , en effet je comprend bien mon code, même si j'ai pas très bien explicité les noms des éléments.
    Je devais être fatigué pour pas avoir réussi a re effacé.

    Par contre je vois toujours pas pour le wrap c'est assez gênant

    J'ai ça tiré de la doc, mais ca m'aide pas plus que ça
    "However, you can also set the width option to a dimension, and each line of the text will be broken into shorter lines, if necessary, or even broken within words"

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Moloumo Voir le message
    Bonjour, merci de m'avoir répondu

    Désolé si mon code était pas clair , en effet je comprend bien mon code, même si j'ai pas très bien explicité les noms des éléments.
    Je devais être fatigué pour pas avoir réussi a re effacé.

    Par contre je vois toujours pas pour le wrap c'est assez gênant
    Non, vous n'avez pas compris : je vous incite à clarifier votre code, à bien penser le nom de vos variables pour qu'à la relecture vous sachiez d'où viennent ces variables et surtout où elles vont.

    Un nom de variable donne un sens induit à la variable : si vous nommez canvas un objet text, vous allez tout mélanger dans votre tête.

    Pour l'option 'wrap', j'insiste LISEZ LA DOC bon sang :

    http://infohost.nmt.edu/tcc/help/pub...eate_text.html

    IL N'Y A PAS d'option 'wrap' dans canvas.create_text().

    @+.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Moloumo Voir le message
    Bonjour, merci de m'avoir répondu

    Désolé si mon code était pas clair , en effet je comprend bien mon code, même si j'ai pas très bien explicité les noms des éléments.
    Je devais être fatigué pour pas avoir réussi a re effacé.

    Par contre je vois toujours pas pour le wrap c'est assez gênant

    J'ai ça tiré de la doc, mais ca m'aide pas plus que ça
    "However, you can also set the width option to a dimension, and each line of the text will be broken into shorter lines, if necessary, or even broken within words"
    C'est une forme de wrap qui ne dit pas son nom.

    Chez Tkinter, ils appellent "dimension" une grandeur mesurable avec différentes unités (pixels, mm, cm, inches, point pica, etc).

    Utilisez des pixels (sans spécifier d'unités) dans un premier temps, ce sera déjà bien comme ça.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    text_id = canvas.create_text(...text="hello good people!", width="200") # sans unités = en pixels
    Le texte passé dans "text" sera coupé tous les 200 pixels et produira autant de lignes que nécessaire.

    @+

    PS: un peu de culture générale : http://fr.wikipedia.org/wiki/Point_(..._ou_point_pica

  6. #6
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 824
    Points : 7 120
    Points
    7 120
    Par défaut
    @Moloumo,

    Pour ajouter à tout ce qui a été dit, vous avez une incompréhension...

    Les options de la méthode create_text sont mis sous forme de dictionnaire contenant des clés/valeurs.

    Quand on vous dit que wrap n'est pas présent dans les options, c'est que wrap n'est pas présent en tant que clé du dictionnaire options.

    Pour wrapper, vous devez utiliser la clé width et une valeur définie comme 120 dans votre cas, qui incitera à arrêter le texte au 120ème pixel.

    Bonne journée,
    Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
    La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

Discussions similaires

  1. Question a propos de LWP::Parallel::UserAgent
    Par shinux2004 dans le forum Modules
    Réponses: 2
    Dernier message: 03/09/2005, 02h01
  2. Question a propos de threads
    Par cryptorchild dans le forum Langage
    Réponses: 1
    Dernier message: 12/07/2005, 10h03
  3. [VBA-E] Question à propos des checkbox
    Par Timfg dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 26/04/2005, 15h09
  4. Question a propos des modulos
    Par barthelv dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 24/03/2005, 15h56
  5. [debutant] Questions a propos du XML
    Par brune dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 04/06/2004, 09h39

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