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 :

superposition tag et selection


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 147
    Par défaut superposition tag et selection
    Bonjour,
    Dans un widget Text, je souhaiterais pouvoir superposer une phrase qui est <<taguée>> en surbrillance avec la visualisation d'une partie de texte sélectionnée.

    Comme je pense que ma demande n'est pas très claire, je fournis ci-dessous un exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    import tkinter
     
    root=tkinter.Tk()
    texte=tkinter.Text(root)
    texte.config(font=('Courier New', 11),background='white', foreground='black',insertbackground='black',undo=True,
                  selectbackground='#CCCCCC',selectforeground='black')
    texte.insert(tkinter.INSERT,'ligne 1\nligne 2\nligne 3')
    texte.tag_add('brillance','2.0','3.0')
    texte.tag_configure('brillance',background="#FFFFCC")
    texte.pack()
    root.mainloop()
    Si je sélectionne, la ligne1 (ou un bout de la ligne 1), la partie sélectionnée devient grisée... par contre la ligne 2 reste au format tag <<brillance>>.
    Existe-t-il un moyen de superposer la partie sélectionnée (en gris) avec la ligne taguée en <<brillance>>?
    Merci pour vos réponses.
    Gabriel

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut,

    Le texte taggué à la fois "brillance" et "sel" sera affiché avec les caractéristiques correspondant au tag qui a la priorité la plus forte.
    "brillance" étant déclaré le dernier, sa priorité est par défaut la plus forte.
    Si ce n'est pas ce que vous voulez, il faut élever la priorité du tag "sel".
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ...
    texte.tag_configure('brillance',background="#FFFFCC")
    texte.tag_raise('sel')
    texte.pack()
    ...
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 147
    Par défaut
    Impeccable

    Merci

    Gabriel

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

Discussions similaires

  1. tag <html:select> multicolumn
    Par badoress dans le forum Struts 1
    Réponses: 5
    Dernier message: 31/01/2008, 12h20
  2. Réponses: 6
    Dernier message: 12/12/2007, 14h12
  3. Réponses: 2
    Dernier message: 05/10/2007, 09h48
  4. [Struts] Collection et tag <html:select>
    Par brousaille dans le forum Struts 1
    Réponses: 7
    Dernier message: 18/01/2006, 23h12
  5. [JSP]Erreur de syntaxe dans un tag <option select
    Par logica dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 03/05/2005, 14h33

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