Tkinter

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 18 mars 2017; kontroller kräver 20 redigeringar .

Tkinter (från engelska  Tk inter face ) är ett plattformsoberoende händelsedrivet grafikbibliotek baserat på Tk -verktyg (distribuerat brett i världen av GNU / Linux och andra UNIX -liknande system, även portat till Microsoft Windows ), skrivet av Steen Lumholt (Steen Lumholt) och Guido van Rossum [1] . Ingår i Pythons standardbibliotek .

Tkinter är fri programvara som distribueras under en Python -licens [2]  .

Utnämning

Biblioteket är utformat för att organisera dialoger i ett program med hjälp av ett grafiskt gränssnitt ( GUI ). Biblioteket innehåller vanliga grafiska komponenter:

Det bör också noteras att Python har en uppsättning ytterligare verktyg i följande moduler:

Exempel: Hello World-program

från tkinter import * root = Tk () rot . titel ( "Hej världen!" ) rot . geometri ( '300x40' ) def button_clicked (): print ( "Hej världen!" ) defclose ( ): rot . förstöra () rot . sluta () button = Button ( root , text = "Press Me" , command = button_clicked ) knappen . pack ( fyll = BÅDA ) rot . protokoll ( 'WM_DELETE_WINDOW' , stäng ) rot . huvudslinga ()

Parsar programmet

Ovanstående exempel visar den enklaste GUI-applikationen i Python. Den första raden i programmet importerar tkinter-modulen (före version 3.1 av Python-språket skrevs tkinter-modulens namn i kod med stor bokstav - "Tkinter"):

från tkinter import *

Som ett resultat av import i programmets namnutrymme (skript) finns det namn inbyggda i Tkinter, som kan nås direkt. Det bör noteras att massimport av namn kan leda till konflikt mellan dem. Dessutom tar det längre tid för tolken att hitta rätt i listan över tillgängliga namn.

Följande kommando skapar programmets rotfönster (nedan kallat fönstret):

root = Tk ()

Följande kommando ändrar fönstrets titel:

rot . titel ( "Hej världen!" )

Följande kommando ställer in fönsterdimensionerna:

rot . geometri ( '300x40' )

Följande är definitionen av funktionshanteraren för händelsen "musknapp nedtryckt".

def button_clicked (): print ( "Hello World!" )

Funktionshanterare av händelsen "stänger huvudfönstret". Det stoppar programmets huvudslinga och förstör huvudfönstret. Utan det kan programmet stängas endast om Python-tolkprocessen avslutas. Eftersom funktionen använder den globala variabeln rot, måste deklarationen av själva funktionen komma efter deklarationen av rotvariabeln.

def close (): rot . förstöra () rot . sluta ()

Skapa en knapp med texten "Press Me" och bind den till den ovan definierade hanterarfunktionen:

button = Button ( root , text = "Press Me" , command = button_clicked )

Vi "packar" den skapade knappen med hjälp av packlayouthanteraren. fill=BOTH (även fill="both") talar om för knappen att ta upp allt tillgängligt utrymme (bredd och höjd) på den överordnade rotwidgeten:

knappen . pack ( fyll = BÅDA )

Bind stängningshändelsen för huvudfönstret med stängningshanterarens funktion:

rot . protokoll ( 'WM_DELETE_WINDOW' , stäng )

Vi startar applikationens huvudslinga:

rot . huvudslinga ()

Som ett resultat av att du trycker på knappen kommer meddelandet "Hello, World!" att visas i konsolen. Meddelandet kommer att visas varje gång knappen trycks ned.

Se även

Anteckningar

  1. Matt Conway, Tkinter Life Preserver Arkiverad 31 maj 2016 på Wayback Machine 
  2. Tkinter-översikt Arkiverad 13 november 2013.  (Engelsk)

Litteratur

  • John E Grayson. Python och Tkinter-programmering. - Manning Publications, 1999. - 658 s. — ISBN 9781884777813 .
  • Suzi R.A. Skapa applikationer med ett grafiskt användargränssnitt // The Python Programming Language: A Tutorial. - M . : Intuit, Binom. Kunskapslaboratoriet, 2006. - 328 sid. — ISBN 5-9556-0058-2 .

Länkar