Kuxazululiwe: i-tkinter igxile ekungeneni

Isingeniso

I-Tkinter iyilabhulali ye-Python ye-graphical interface yomsebenzisi evulekile yomthombo ovulekile (i-GUI), futhi iyithuluzi elibalulekile lokudala izinhlelo zokusebenza zedeskithophu. Ukusetshenziswa okuvamile kwe-Tkinter ukudala amafomu adinga okokufaka komsebenzisi kumawijethi Entry, njengezinkambu zombhalo. Isici esibalulekile sokudala nokusebenza ngala mawijethi Okufakwayo ukuphatha ukugxila: ukucacisa ukuthi iyiphi ingxenye yohlelo lokusebenza ezothola okokufaka kumsebenzisi uma imicimbi yekhibhodi yenzeka. Lesi sihloko sizohlinzeka ngokubheka okujulile ekulawuleni ukugxila kumawijethi Wokungena nge-Tkinter futhi sizochaza izingxenye ezihlukahlukene zekhodi ngokuningiliziwe. Ngaphezu kwalokho, izoxoxa ngamalabhulali ahlobene nemisebenzi edlala indima ebalulekile ekusebenziseni i-Tkinter ekuthuthukisweni kwe-GUI.

Ukuqonda Ukugxila ku-Tkinter kanye Namawijethi Okungena

Lapho uthuthukisa izinhlelo zokusebenza usebenzisa i-Tkinter, kubalulekile ukuqonda umqondo wokugxila. I-Focus ibhekisela kwinto ye-GUI okwamanje ethola okokufaka kwekhibhodi. Iwijethi eyodwa kuphela ekwazi ukugxila ngesikhathi. Ngokuvamile, iwijethi egxilile iboniswa ngokubukeka, njengokugqamisa umbhalo noma ukubonisa ikhesa ecwayizayo endaweni yokufaka umbhalo.

  • Umsebenzi oyinhloko wokugxila uwukuqinisekisa ukuthi umsebenzisi angakwazi ukusebenzisana nezingxenye ezifanele zohlelo lokusebenza ngendlela enembile.
  • Kuzinhlelo zokusebenza zedeskithophu, ukuphathwa kokugxila kuyisici esibalulekile sokuhlangenwe nakho komsebenzisi. Uma abasebenzisi bezulazula efomini, ngokwesibonelo, kufanele bakwazi ukuhamba phakathi kwezinkambu zokufaka ngokushelela nangaphandle kokudideka.

Ukuze ulawule ukugxila kumawijethi Okungena, i-Tkinter inikeza izindlela ezimbalwa ezifana ne-focus_set() kanye ne-focus_get().

Isixazululo: Ukuphatha Ukugxila ku-Tkinter Entry Widgets

Isixazululo esiyinhloko sokuphatha ukugxila kumawijethi Entry ukusebenzisa i-focus_set() kanye ne-focus_get() imisebenzi ehlinzekwa ngu-Tkinter. Nasi isibonelo sendlela yokusebenzisa le misebenzi:

import tkinter as tk

def focus_next(event):
    event.widget.tk_focusNext().focus_set()

root = tk.Tk()

e1 = tk.Entry(root)
e1.pack()
e1.bind("<Tab>", focus_next)

e2 = tk.Entry(root)
e2.pack()
e2.bind("<Tab>", focus_next)

root.mainloop()

Kule khodi engenhla, siqala ukungenisa imojula ye-tkinter bese sakha umsebenzi olula, focus_next(). Lo msebenzi uthatha umcimbi njengokufakwayo futhi usebenzisa izindlela ze-โ€œtk_focusNext()โ€ kanye โ€œne-โ€œfocus_set()โ€ ukuze usethe ukugxila kuwijethi Yokufaka elandelayo. Sibe sesidala iwindi le-Tkinter (impande) kanye namawijethi amabili Wokungena, i-e1 ne-e2. Kuwijethi ngayinye yokuNgena, sibopha i ukhiye kumsebenzi we-focus_next(). Lapho i- ukhiye ucindezelwa ngenkathi u-e1 noma u-e2 egxile, ukugxilwa kuzodlulela kuwijethi yokuNgena elandelayo.

Okuthunyelwe okuhlobene:

Shiya amazwana