Συζήτηση
Γεια χαρά, Επισκέπτης
Όνομα χρήστη: Κωδικός: Να με θυμάσαι

ΘΕΜΑ: tkinter και κουμπί ENTER

tkinter και κουμπί ENTER 14 Χρόνια 3 Μήνες πριν #644

  • malos
  • Το Άβαταρ του/της malos
  • Αποσυνδεμένος
  • py____
  • Δημοσιεύσεις: 23
Καλησπέρα.

Έχω αυτόν τον κώδικα ...
#!/usr/bin/python3
from tkinter import *
from tkinter.messagebox import *
 
class forma(Frame):
 
	def enter_stoixeia(self):
 
 
		self.label_onoma = Label(self, text = 'Ονοματεπώνυμο')
		self.label_onoma.pack()
		self.enter_onoma = Entry(self)
		self.enter_onoma.pack()
 
 
 
		self.label_tilefono = Label(self, text = 'Τηλέφωνο')
		self.label_tilefono.pack()
		self.enter_tilefono = Entry(self)
		self.enter_tilefono.pack()
 
 
 
		self.label_mail = Label(self, text = 'mail')
		self.label_mail.pack()
		self.enter_mail = Entry(self)
		self.enter_mail.pack()
 
 
 
		self.label_odos = Label(self, text = 'Διεύθυνση')
		self.label_odos.pack()
		self.enter_odos = Entry(self)
		self.enter_odos.pack()
	def drawGUI(self):
		self.enter_stoixeia()
		self.enter_onoma.focus()
		return root;
	def OK(self):
		self.koumpi = Button(self, text = 'OK')
		self.koumpi.pack()
	def __init__(self, master = None):
		Frame.__init__(self, master)
		self.master.title("Αντζέτα")
		self.pack()
		self.drawGUI()
		self.OK()
 
root = Tk()
app = forma(master = root)
app.mainloop()

προκειμένου να τον εξελίξω σε πρόγραμμα τηλεφωνικού καταλόγου.
Μου προκύπτει το εξής θέμα.
Όταν κάνω μία εισαγωγή στο πρώτο πεδίο (για το ονοματεπώνυμο) (Είναι προεπιλεγμένος ο κέρσορας να βγαίνει στο πρώτο πεδίο με την self.enter_onoma.focus() ),
μπορώ να πάω στο επόμενο πεδίο εισαγωγής με κλικ του ποντικιού. Πως μπορώ να το κάνω και πατώντας το ENTER ;

Ευχαριστώ. ;)
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Απ:tkinter και κουμπί ENTER 14 Χρόνια 3 Μήνες πριν #646

  • myle
  • Το Άβαταρ του/της myle
  • Αποσυνδεμένος
  • Admin
  • Δημοσιεύσεις: 467
  • Ληφθείσες Ευχαριστίες 15
Μια σκέψη θα ήταν να φτιάξεις μια ξεχωριστή συνάρτηση η οποία θα χειρίζεται το enter. Όταν πατάς enter, θα θέτει το focus στο επόμενο στοιχείο από μια λίστα (προφανώς λίστα με τα αντικείμενα τα οποία θέλεις να παίρνουν focus).

Θα μπορούσα να σου γράψω τώρα κώδικα, αλλά από ότι βλέπω πειραματίζεσαι και θέλεις να μάθεις. Για αυτό σου προτείνω να ρίξεις μια ματιά στην συνάρτηση next_professor() στο bitbucket.org/taspython/ceid_battle/src/tip/configuration.py
Είναι από το παιχνιδάκι που φτιάχνουμε συχνά συχνά.

Βρίσκει σε ποια θέση είμαστε (στην περίπτωση σου θα είναι ποιο αντικείμενο έχει το focus) και κάθε φορά που πατάς enter πηγαίνει στο επόμενο.

Ενδιαφέρουσα χακιά είναι και οι wrappers που βρίσκονται ακριβώς από κάτω . Ο συγκεκριμένος κώδικας που θα δεις είναι φρέσκος φρέσκος (μόλις σήμερα βγήκε).

Αν μπερδεύτηκες, θέλεις διευκρινήσεις, θέλεις μια άμεση απάντηση ή ο,τιδήποτε πες. Ίσα ίσα που θα χαρούμε ακόμα περισσότερο.
«Αν υποθέσουμε ότι αυτό είναι δυνατό, (να μεταδώσουμε τη σοφία παντού) τότε ειλικρινά ο τρόπος ζωής των θεών θα περάσει στους ανθρώπους. Τα πάντα θα είναι γεμάτα...
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.
Συντονιστές: pmav99
Χρόνος δημιουργίας σελίδας: 0.601 δευτερόλεπτα

Μοιράσου το!

Powered by CoalaWeb

Λίστα Ταχυδρομείου