Consola neagră a fost utilă — dar utilizatorii adevărați vor butoane, casete și ferestre. Tkinter e biblioteca standard Python pentru interfețe grafice, iar tot ce știi despre obiecte (Modulul 11!) intră azi în joc.
Fereastra (Tk) e pânza; pe ea așezi widget-uri: etichete (Label), casete (Entry), butoane (Button). Apasă pe orice widget din fereastra de mai jos!
Cele patru pe care le folosești mereu — plus două pe care e bine să le cunoști, exact cum le enumeră programa.
Un widget creat nu apare până nu-l AȘEZI. Sunt trei manageri de aranjare — aceleași 3 widget-uri, trei feluri de a le pune. Comută:
Fereastra e o grilă de pixeli — mici pătrățele luminoase. Colțul din stânga-sus e (0, 0). De acolo, x crește spre DREAPTA, iar y crește în JOS (atenție: y merge în jos, nu ca la matematică!). widget.place(x=150, y=80) pune widget-ul cu colțul lui la 150 pixeli dreapta și 80 pixeli jos.
🎮 trage cursoarele — butonul se mută în fereastra de 240×150:
O interfață grafică nu rulează de sus în jos — așteaptă evenimente (clic!) și reacționează cu funcția legată prin command=. Testează live:
📋 program COMPLET și AERISIT — copiază-l pe tot, rulează direct:
▶ demo funcțional — aplicația chiar merge:
Codul de manual e scurt, dar dacă îl rulezi cu litere sau împarți la 0… crapă. Iată versiunea REZISTENTĂ: cu etichete, validare și mesaje de eroare. Click pe orice linie pentru explicație.
▶ aplicația, funcțională — încearcă și cu litere sau ÷ 0:
Cinci întrebări despre lumea ferestrelor.
Tkinter pe scurt.
Diferența a două numere — primul buton al calculatorului tău.
Rezolvă pe pbinfo.ro →x aparține intervalului [a,b]? — perfect pentru un quiz cu buton de verificare.
Rezolvă pe pbinfo.ro →Aici pui totul în practică. Alege UNA din cele trei teme (sau propune-ți una) și construiește o aplicație Tkinter completă, pe etape.
| Criteriu | Punctaj |
|---|---|
| Fereastra pornește și afișează widget-urile corect (layout curat) | 25 p |
| Butoanele reacționează — evenimentele funcționează | 25 p |
| Citirea din casete și logica dau rezultate corecte | 25 p |
| Tratarea erorilor (date greșite, ÷ 0) cu messagebox | 15 p |
| Cod curat, fără repetiții + aspect îngrijit | 10 p |