Comment couper un entry avec le curseur

Résolu
Pr.Witherfire Messages postés 84 Statut Membre -  
Pr.Witherfire Messages postés 84 Statut Membre -

Bonjour,

Je voudrais que une entry soit coupée au niveau du curseur quand entrée et pressé ( pour faire un système de saut de ligne)

Merci


Android / Chrome 104.0.0.0


Que Notch soit avec vous

4 réponses

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 944
     

    Bonjour,

    Il faut effectivement utiliser un tk.Text pour écrire sur plusieurs lignes comme le suggère bhore #1. En repartant de ce lien et de ce lien :

    import tkinter as tk
    
    def on_click():
        s = text.get("1.0", tk.END)
        words = s.split()
        print(words)
    
    # Prepare the window
    root = tk.Tk()
    text = tk.Text(root, height=2, width=30)
    text.pack()
    text.insert(tk.END, "Just a text Widget\nin two lines\n")
    button = tk.Button(text = "Click me", command = on_click)
    button.pack()
    
    # Run the program
    tk.mainloop()
    

    Quand on clique sur le bouton, on voit apparaître dans le terminal :

    ['Just', 'a', 'text', 'Widget', 'in', 'two', 'lines']

    Bonne chance

    1
  2. bhore
     

    Bonsoir, que veut dire “ coupée au niveau du curseur ” ?

    Si tu as nécessité d'avoir plusieurs lignes, alors le widget Entry n'est pas adapté, sers-toi du widget Text de tkinter.

    0
  3. Pr.Witherfire Messages postés 84 Statut Membre
     

    Bonjour.

    Coupé au niveau du curseur signifie : soit  une ligne 1 (comportant deux lettres :a et b). Si le curseur est entre a et b et que entrée est pressée, la ligne 1 affichera a et la ligne 2 affichera b.

    En fait, je voudrais que les mots soit mis dans des Entry(1 mot = 1 entry) pour pouvoir les traiter après. L'idée de texte n'est pas mauvaise. Mais dans ce cas, comment isoler chaque mot dans des variables (dans le widget text)

    Merci


    0
  4. Pr.Witherfire Messages postés 84 Statut Membre
     

    Ok merci beaucoup.


    0