Differences between revisions 101 and 148 (spanning 47 versions)
Revision 101 as of 2011-02-10 18:22:13
Size: 18713
Editor: d-24-233-220-67
Comment:
Revision 148 as of 2022-02-08 22:05:48
Size: 6045
Editor: martinmiller
Comment: Replaced dead links to New Mexico Institute of Mining and Technology tkinter manual.
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
PK! $‡‚Ž[Content_Types].xml ¢( ´”MOƒ@†ï&þ²WÛz0Ɣö õ¨M¬ñ¼.CÙÈ~dgûõï
JKª¡¥Z½À2ïûÌ
3ƒÑJ—Ñ<*kRÖOz,#m¦Ì,e¯ÓÇø–E„ÉDi
¤l
ÈFÃˋÁtí#ª6˜²"wÇ9Ê´ÀÄ:0t’[¯E [?ãNÈ1~ÝëÝpiMâPi°áàr1/C4^ÑãšÄC‰,º¯_¬¼R&œ+•HùÂdß\â­CB•›w°P¯ƒñV‡êä°Á¶î™¢ñ*ƒh"|xš0øÒúŒgVÎ5õ
—iá´y®$4õ•šóV"e®Ë¤9ÑB™
ÿA
ëðï)jÝíßT(Æy’>vw
ãªé¤¶Ø«ívƒ(¤SL¾þ‚qWè¸UîDXÂûË¿Qì‰w‚ä4Sñ^ ‰ÿ0ŒFº"мß\ûgsldŽYÒdL¼uHûÃÿ¢í݂¨ªc9>(hVDۈ5Ž´{Îîªí–AÖâÍ7Ûtø ÿÿPK!
‘·óN
_rels/.rels ¢( Œ’ÛJA
†ïßaÈ}7Û
"ÒÙÞH¡w"ë„™ìw̤ھ½£ ºPÛ^æôçËO֛ƒ›Ô;§<¯aYՠ؛`Gßkxm·‹PYÈ[š‚g
GΰinoÖ/<‘”¡<Œ1«¢â³†A$>"f3°£\
ȾTº
I S‘ÌõŒ«º¾ÇôWš™¦ÚY
igï@µÇX6_Ö]7~
fïØˉÈaoÙ.b*lIÆrj)õ,l0Ï%‘b¬
6ài¢ÕõDÿ_‹Ž
, ¡ ‰Ïó|uœZ^tÙ¢yǯ;!Y,}{ûCƒ³/h>ÿÿPK!|;—9"¹
word/_rels/document.xml.rels ¢( ¬“MO„0†ï&þÒ»V]Ù²5Ù«®ñÜ-Sh„–tÆþ½³
Ê¢.Mfš¾ÏÓI»Z¿ÕUô
³‚¥qÂ"°ÊåÆ‚=loO.Y„$m.+gA°­³ã£Õ
T’Â!,MƒQH±(XIÔ\qŽª„Zbì°aG;_K
¥/x#Փ,€/’dÉ}?ƒeƒÌh“
æ7ù)‹¶mÈg;­‚k§žk°4‚àDáf2¥/€ÛwâàÉø¸Ââ€Bm”wè4ÅÊÕü“þA½^Œ#µ࣡òFkPÔÇÿܚòHxŒŒù£èȽAtõ~9'žÂ
ozWònM§
ÎçtÐÎÒVÇWkJâlN‰WØÝÿz•½æ^„>\öÿÿPK!K%&ƒ}úword/document.xmlìYÝoÛ8
?àþÁy½ækI[K†-½>\4ÝóA‘åXW[$9¾ì¯);ÎçŠuÒ
˓mY"$EŠ"ßø?MȒ+”ì­z3 \2
¹èŸŸ&W·±ŽÊ&Jò~°â6ø0øó÷y/T,K¹tHHÛË5ë±sº×hXó”Úz*˜QVE®ÎTÚPQ$oäʄv³ÕôoÚ(Æ­~C*—Ô%¹ôšÒ\¯H™”:[WfÑH©yÎôP×ԉ¹H„[íæõšŒê™‘½ÐU—ô
@åc½Â
Hq„o±rTjÀslž%m,ôFŒ¥"ÆkH˗„X¦Éz^®[~•Èßcƒ‘¡9˜bCð€Üe„Å¢4)ô€öÝXuŸb«ù’0¥ED
á{ ìò\#I©™SͶrÁ#~fß•é
Ž?Gí^>W´Ð1_¬yí=o[4û*®;‹©æIYï~!•¡óå­Á

 XÌU¸Â§&y‚MøØÀK;ݛñ$XMÁõG<¢YâÿL·†<å©Á͜šiÊøh
t—4iAc÷ÏÃþŸð¿ÌºG±ˆÝ½
÷~Z .£4r
!"àD Ò۝êã1C™‘{ÁÍpÌDIgq±eL>T™ܐž#™ø£´‡£
̱=Ñ÷_†HÇKÔî “¨¹ÀS—Ü`‚×îŽ*QøÂÉ{þHè¡â@%ÚpË͒ƒšò
A¸®ï
ÝàŽšù[$É>–³VQÇÉG8+’‡ç H<ª˜Y-y:‡=þ-í¢ãvo®Ç“N»5­î>®7؁L€v€ #’K„ü}#d­F0î[“Ã٘´Ú·
2㌴
ßeg?/nïÏîWžÒxê]Üþ¤™Èù%FƒZíô1
½¤ÅUZ
A"NäÑôx’bÒ4juoßµß"iúDç+‚ù»ÝÙ¾`È7Hžêzµƒâ’9ýNwË
Э
Jy¹¾T°ns–•¡S£†¦dÄ-3Bc!öðŠ|
Áô)–@
ðîÄ1ˆ¦Û·và‰¯È)‰©%.æ%Ê4
Û|­f8ž‰ŒJ_þfÇÔñ‹ ‰àtqԙ$´¡ÌAc„Ü}¾'BB1‚ÂY<¡þ3£•å$G{(ÂÀP¢~ªUÞDT×SYˋ,‘9
U.Ø¢í‰o­[K¿ÜÁX¨
á”Å$䌆¼¾gñ¹RÏØ}™9j
l[–•Q\Ýþ½SŸ({.j¡ë¹c_\-fúšfµßÏ2ªìî—K–qÉ2öªsÍq³;„V#q=ø‹÷/~¥®Ã·2C˙›V¡/R/Î×`³/`À
:âí²ÇÃ{÷ú=>péÅ?):¥a¼S´
66ŸsåœJ7ß ¶þÆp˜b7é¦í[H‘R¾¹T~.2Wöš<;¦ìý”
œã‡¡g6¬°
5ŽÊw×þ/„«Bnßj)Úo0¶nÚ¾ÿÿPK!0ÝC)¨¤word/theme/theme1.xmlìYOoÛ6¿Øw toc'vuŠØ±›-MÄn‡
i‰–ØP¢@ÒI}Úã€úa‡Øm‡a[Ø¥û4Ù:l
Я°GR’ÅX^’6؊­>$ùãûÿ
 ©«×îÇ
Tkinter is Python's de-facto standard GUI (Graphical User Interface) package. It is a thin object-oriented layer on top of [[http://www.tcl.tk/|Tcl/Tk]].
Line 64: Line 3:
!)OÚ^ýrÍC$ñy@“°íÝ
ö/­yH*œ˜ñ„´½)‘Þµ÷ß»Š×UDb‚`}"×qۋ”Jח–¤ÃX^æ)I`nÌEŒ¼Šp)øèÆli¹V[]Š1M<”àÈޏ©OÐP“ô6râ=¯‰’zÀgb Ig
ÁuSÙe
bÖö€OÀ†ä¾òÃRÁDÛ«™Ÿ·´qu ¯g‹˜Z°¶´®o~ÙºlAp°lxŠpT0­÷­+[}`j
×ëõº½zAϰV–2ÍF­ÞÉi–@öqžv·Ö¬5\|‰þʜ̭N§Óle²X¢dsøµÚjcsÙÁÅ7çðÎf·»êà
ÈâWçðý+­Õ†‹7 ˆÑä`­
ÚïgÔ
Ș³íJøÀ×j|†‚h(¢K³óD-Šµßã¢
dXÑ©iJÆ؇(îâx$(Ö
ð:Á¥;ä˹!Í
I_ÐTµ½S
1£÷êù÷¯ž?EÇž
?øéøáÃã?ZBΪmœ„åU/¿ýìÏÇ£?ž~óòÑÕxYÆÿúÃ'¿üüy5Òg&΋/Ÿüöìɋ¯>ýý»GðMGeøÆD¢›äíó3Vq%'#q¾ÃÓòŠÍ$”8ÁšKýžŠ
ôÍ)f™w
9:ĵà
å£
x}rÏx‰‰¢œw¢ØîrÎ:\TZaGó*™y8IÂjæbRÆíc|XÅ»‹Ç¿½I
u3KGñnD
1÷NIBÒsü€
íîRêØu—ú‚K>Vè.E
L+M2¤#'šf‹¶i
~™Vé
þvl³{u8«Òz‹
ºHÈ
Ì*„æ˜ñ:ž(

☕
~«¨JÈÁTøe\O*ðtHG½€HYµæ–}KNßÁP±*ݾ˦±‹Š
TѼ9/#·øA7ÂqZ
Tkinter is not the only GuiProgramming toolkit for Python. It is however the most commonly used one. CameronLaird calls the yearly decision to keep TkInter "one of the minor traditions of the Python world."
Line 94: Line 5:
Ð$*c?¢íqUßån†èwðNºû%Ž»O¯·ièˆ4
=3¾¼N¸¿ƒ)cbJ
u§VÇ4ù»ÂÍ(TnËáâ
7”Ê_?®ûm-ٛ°{UåÌö‰B½w²<w¹èÛ_·ð$Ù#ó[Ô»âü®8{ÿùâ¼(Ÿ/¾$Ϫ0h݋ØFÛ´Ýñ®{L¨)#7¤i¼%ì=Aõ:sâ$Å),àQg20pp¡Àf
\}DU4ˆp
M{ÝÓDB™‘%J¹„⮤­ñÐø+{ÔlêCˆ­
«]
Øá=œŸ5
2FªÐ
hsF+šÀY™­\Ɉ‚n¯Ã¬®
:3·ºÍE‡[¡²6±9”ƒÉ
Õ`°°&45Z!°ò*œù5k8ì`Fmwë£Ü-Æ
é"á€d>ÒzÏû¨nœ”Çʜ"Z
úàxŠÕJÜZšìp;‹“Êì
ØåÞ{/å<óP;™Ž,)''KÐQÛk5—›
òqÚöÆpN†Ç8¯KÝGbÂe“¯„
ûS“Ùdừ­\17 êpõaí>§°SR!Õ–‘
Tkinter Documentation
Line 112: Line 7:

K4'+ÿrÌzQ
TT£³I±²Áð¯Ivt]KÆc⫲³K#Úvö5+¥|¢ˆDÁ±‰ØÇà~
ª O@%\w˜Š _ànN[ÛL¹Å9Kºò˜ÁÙqÌÒgåV§hžÉn
R!ƒy+‰ºUÊn”;¿*&å/H•rÿÏTÑû Ü>¬Ú>\
 * [[ISBN:1884777813|Python and Tkinter Programming]] by John Grayson (see also GuiBooks). This book just recently came back into print on demand, see the [[http://www.manning.com/grayson|publisher's website]].
 * [[https://coderslegacy.com/python/python-gui/|Python GUI with Tkinter]] is a complete tutorial that covers all the widgets for the Tkinter library, complete with examples.
 * [[https://coderslegacy.com/python/tkinter-ttk-widgets-tutorial/|Tkinter ttk Extension Tutorial]] covers the new widgets and features brought by the ttk module into Tkinter. (ttk is an extension and submodule included within Tkinter)
 * [[http://thinkingtkinter.sourceforge.net/|Thinking in Tkinter]] is an introduction to some basic Tkinter programming concepts.
 * [[http://www.tkdocs.com/tutorial/index.html|TkDocs Tutorial]], official Tkinter documentation that covers Python 3+ and Tk8.5, with easy to follow examples.
 * [[https://docs.python.org/3/library/tk.html|Graphical User Interfaces with Tk]], a chapter from the [[https://docs.python.org/3/index.html|Python Documentation]].
 * [[http://www.tcl.tk/man/|Online Tcl/Tk Manual Pages]] - the official man pages at the Tcl Developer Xchange.
 * [[http://modcopy.sourceforge.net/tips.html|Tips for Python/Tk]] by Andreas Balogh (about useful documentation, GUI builders and tips using Grid and HList widgets).
 * The New Mexico Institute of Mining and Technology created its own Tkinter manual. It is available in [[https://tkdocs.com/shipman//|HTML]] and [[https://tkdocs.com/shipman/tkinter.pdf|PDF]].
 * The ''Tkinter Life Preserver'', by Matt Conway is still useful, though way out of date. It's the only document that explains how to read the Tcl/Tk manuals and translate the information there to Tkinter calls. [[http://www6.uniovi.es/python/doc/life-preserver/index.html|HTML version]], converted by Ken Manheimer.
Line 118: Line 18:
Œt¦´=.TÄ¡
¥õûS; Zà~¦!¨à‚ÚüäPÿ·9gi˜´†C¤Ú§!ö# Bö ,™è;
X=Û»,I–2UW¦Vì9$l¨kàªÞÛ=A¨›j’•ƒ;î{–A£P79å|s*Y±÷Ú
ø§;›Ì ”[‡MC“Û¿±hf»ª]o–ç{oY=1k³yV³ÒVÐÊÒþ5E8çVk+֜ÆËÍ\8ðâ¼Æ0X4D)Ü!!ýö?*|f¿vè
uÈ÷¡¶"øx¡‰AØ@T_²ÒÒŽ q²ƒ6˜4)kÚ¬uÒVË7ë
ît
¾'Œ­%;‹¿Ïiì¢9sÙ9¹x‘ÆÎ,ìØڎ-45xödŠÂÐ8?ÈǘÏdå/Y|t
½ß
&LILðJ`è¡& ù-G³tã/ÿÿPK!X?­¶‹åword/settings.xml´VÛnÛ8}_`ÿAÐó:²
_R!N±›Ä»-âvQ¥@Ic™o )+î×wHŠQ³qƒ¢Å>y8—3÷‘/ß>r–
@*Å:ÍϦi¢–
í:ý|¿™\¤‰±D4„Iëô&}{õûo—}aÀZT3 BSðzî­UE–™zœ˜3©@ p'5'ŸºÍ8ѝšÔ’+biEµÇl6.ÓF®ÓN‹b€˜pZkiäÎ:“Bîv´†á'Zèñ,odÝqÖ{Ì40ŒA
³§ÊD4þ³h˜â>‚
^KâÀYÔëóékšCº½Ô͓ŏ„ç
”–5ƒ
â,¤Ë O0ùüÐS©Ï°ÔYð9(4ϧž#7ì
ý‰n‡.ÞÑJ
ڌà¢àuñ®R“ŠáPõù<½Â‰ú"%OúB®±I8ŽÓiš9&#w¥%Pl0æç³f@¬/ZM8NÖ:
 * The source: when all else fails: Read The Source, Luke!
  * ''Demo/tkinter/'' in the Python source distribution.
   . This contains many helpful examples, including updated versions of Matt Conway's examples.
Line 137: Line 22:
oÓÀŽtÌޓª´R¡Ò`Ì«ÙYï‰&µ]*R#ÚµVKõùAÚkœRE
A„™uáª
ó‚pÌ"p‡™ÞÊ\d¦/
õÝB;%ÖÃçpڑÄ}Õ´LAi
6|I¿ÀŸ¢yßKqKüdÿB¯ÂyþˆÛ}T°b;,ÓÿäÌwbèÚR­¥~'œ_u–Å&ºvâñkL$>Iicð,Í«ÛM¨
S%‹Õòv³:%ù¾Íj>ß¼9es“/.Îg§$·×Ë7çN‚1‘òÂ
›õÕe \û
FçšðJS’lÝ9B+^Túá/*¢¼<Çð­¤ìª(œL‚ÀpÂØ÷#
üÒð¢¡FÝÀÎò-Ñíˆ;hè“\ÜÅ÷OXn·Aÿ­e§‚·^ÚÝåóù€G
½£<òMW•ÑJàIùFԉæãA;Àl,O_Xüùõ¸#¢Ý1ù\:Uœ¦K÷µ‚-Q
ϪTm¾Nm÷6w#mñÕàWË?ªv6Èf^†/'óR»ÌP{ œB Qk FÞy䝏<¼ÉAo>ò‘·yËÈïf_ìq5
Ä<4‘tüdLöÐü™ëô+Áì‰ì«»—¸²ðŒá€šäPÀ#^ch¨Å?Š6œ<ºã<[:óA›‘£ìì3]'sÊê7iˆ%hî[õÌ؏øbé‹jŠãX
y5žç³8£Æ– ð’[©1e<ÿðÈãÿ“«¯ÿÿPK! N¬word/webSettings.xmlŒÐÁJ1à»à;,¹·Ù•"²t· Rñ"‚úivvÌdÂLj¬OoÚª ^zË$™™¹ú@_½‹£Ð©f^«
‚¥Á
©S¯/ëٍª$™0O:µQ«þòb™Û
›gH©ü”ª(AZ´Ú¦[­ÅnÌ)B(#1šTJž4~Ûř%Œ&¹ó.íõU]_«o†ÏQh

;²;„ŽýšÁ‘‚l]”-Ÿ£eâ!2Y)û ?yh\øešÅ?eÓ¼,£OéUڛúxB¯*´íÈÍƗs³P}‰brè>aM|˔X®÷”Ÿ
ïK¡ÿdÜÿÿPK!$iEÂJ=word/stylesWithEffects.xml´›ms›8ÇßßÌ}†÷‰’ÆWOÝNšô!3m/­“¹×2ȱ&€8ÀqrŸþVÈ
ìúª1FûÛÕ®þ«¤Ò»Ïaà<ñ$2Z¸“Ó±ëðȓ¾ˆ
îýÝ瓿\'ÍXä³@F|á¾ðÔýðþÏ?ÞíæiöðÔQ:ßÅÞÂÝdY<RoÃC–ž†ÂKd*×Ù©'Ñ\¯
ÇG;™ø£éx2Ö?ʼnôxšíŠEO,ussaݚŒy¬µLB–¥§2y
,yÜÆ'`=f™X‰@d/`{|Q˜‘
w›DóÜ¡ë27åÿ#’Z¸fäµô¶!2M
%<d”nD¼ãXkâ¦pé©-ˆ§0(ÞÛœóφŒÉÁuÂvŠ½Áš¹“á›Aa`æAåwŸÕªÅɸ-˜<#ʄõãÂkfáIÈDdÍ
75åÉ
õЧ¾¿$rbÑÏÚMôhm©eIðl|¡W^9´”d ¶t—s× ½ùÍC$¶
À£ÝäÜQ龩ð¥wÍ×ld©ú˜Ü&ùÇü“þ糌²ÔÙÍYê ˜žËD0¨íݜ³4»L»UáÆ×Ë(êˍú¡ô²—f¥×>
_¸#e=ý^~bÁžO®Í<›šg‹
Šg<:¹_–ù
×>ZÝ
˒“å¥8Ò!ÿ–B‹_
Ÿ´+1ó`•‡­3‚Š¥8P™œÎ@½Ì‡_[5‘l›É
¢
¬l>VftTiiÔ¾åëoÒ{äþ2ƒ/®fÁÃû›ÛDÈ$sá¾}«˜ðpÉCñUø>WÍ vm„ÏÿÙðè>åþþùÏÏZŠs‹žÜF¸1ÓRÿÓ³Çc%‰`:b*u?ԝӴÄÑmÅÞó BÕÿ-“<_‡(ÎTûr´ÿ­
õ¶7hª&ª
€¶Kòõ¬¿‰óþ&Þô7¡‹·ß\Ìú{›–¾1µQªJ|R3é™â+ÏÃÙۖ’U#jUÔ9¢V4#j5Ò9¢V#jÐ9¢–ðεüvŽ¨¥³u„Ç´pU«èLÏja߉,€ž§Mé&=¥.o5Î-KØCÂ⍣šhÕí6±\nWÎU-§Ç‹å2K¤ÚZvÌÈÔ,ƒ£5ùSoX*`Þê9õwj›ã|IlU;PoLñÕbÒ“ƒò6`
ßÈÀç‰sǟMF ãHgivÎõLë7ñ°É
ت–Û »h˜ôæ™0ö¿‰TÏAëbºh¥Ë8*‡
uÙlü;÷Å6,¦±¹0zNHs¡]lŸ¢s•¢ú"îŒB%‚iô´}„ÿ¦¹Ðí«
cü7­èHûÿMã:Ò¾®öü’•æþ„⠖׌¼v¯d “õ6(Ö@§<ÌÈ+Ø"p!±µ‰y¿’OçÒóà77L’s±×Q
œCы
 
9)ٛ""'¨ÂšXý´–"‹î/þ$Ô|©Í@«´Ýkv.糆€„ÚCÿÜʬ{=mÐ<,å&‚?—¤ÜÁÑÎV
––דéw„
÷k|P¿Hõk
PC}4ïylOÄCú7G‹,˶‹é²C+óŒ¬ÌDkõMÄþ«aõ6×B½o"(äÕû&‚BÎN¥—Ù¾‰`
Ö7¬†®Ñœ£²¦R‚"÷Í2Èî
#ÞÐ0â
#ÞPñî†
'ÞY¬¦–ÅÒ¯P~Õ· ²x#@dm0j—ÿͨè{ÚJû/·ˆ7‚BNP]¼rvšÄÁÒ¯P*¡Â²R‡`
#ÞÐ0â
#ÞÐ0â
#ÞPñî†
'ÞY¬¦–Å"˃•ÅÒ¯P´á xëUÿÛÅA!'¨.Þ
9;Aµ›T‹œ 
ˊ7‚¥_¡CÎÒÅM jñFD4Œx#@È74Œx#@ýÅ»2œx#Xdm°šZoˆ,Toˆ¬
Å[/Æß.Þ
9AuñFPÈÙ©ªÕ9‹œ 
ˊ7‚¥ë¥·x#@ú•cA”ˆ†oDDÈ74Œx#@ýÅ»2œx#Xdm°šZoˆ,Toˆ¬
Å[¯‘ß.Þ
9AuñFPÈÙ©ªo‹œ 
ËJ
‚5Œx#@º0{‹7¤_9¤W%MÈ7"¢aÄê/ÞݐáÄÁ"kƒÕÔ²x#@dy° ²x#@dmPçlá¼(úxꤡ°ç
ŠS
hà´!IX`
à/¾æ Ü äݧCz‹ ĆòÀ†øQÊGw°û¬¡@Ð(±
„ÔGº_ô)ÒE„³YËM‚»¿¯œ¯æLmœ.©×'oàöPùº¾ž¤.ŸÙK
Wvââd¹²„Ô
®ü
¾ÿy‚òk=j°ºç/êKUùcýÿ¶9~¢
XGy`yp#ª•x·gôq÷*¸áT¼vd%£p3?
¿ßC™÷^Ñlõ;S'Á[|Ö'Å[çÈѯ˜¬Ö
„ËYÚ¥.!e«À\1ƒn""Üå·³L2ýgfLÁ÷W<¾3}!-“qó«_gæÛÉXwÀŠ©•Ì26OôqíÉ!PegÌGDsDÛpœü¸ycIªÎ¡o¢½.IsÖµ¡°3½÷­ø)}ÿ?ÿÿPK!‡]øT
docProps/core.xml ¢( Œ’QOƒ0
ßMü¤ïÐÌT,Q3}˜‰‰oM{·5BiÚ:Æ¿·°
™úàc9ç~=ç–l¾««`
ÆÊFåˆF x#¤Zçè¥\„W(°Ž)ÁªFAŽ:°h^œŸe\§¼1ðd
ÆI°')›r£s:ÅØò
ÔÌFÞ¡¼¸jL͜?š5֌°5à˜®Á1Á
Ã=0Ô#
‚Hýiª 8†
jPÎbQüíu`jûçÀ Lœµtöq§lÁ÷âèÞY9Û¶ÚdˆáóSüö¸|
ª†Rõ»â€ŠLð”`®1Å=3]°Œ‚YUžý+fÝ£ß÷J‚¸é~xëýˆ­ìß«H2<=ú;‡Šû‹A>tº¯xT^“Û»rŠ˜PRZÆIzq™òÞG;™ïKì?ԇ€ÿ ÒYIâ”\Ÿ€bH|úã_ÿÿPK!¡¹
Ö@Y:word/styles.xml´›ßs›8Çßoæþ†÷Ô±Æ×LÝNš¶×Ì´½´NæžemMq 7Iÿú[­0!`7טڏV»ú®ìH¯ßÞő÷Sf¹ÒÉҟ¾8ö=™:TÉvéß\<úË÷r#’PD:‘Kÿ^æþÛ7þñúö,7÷‘Ì=0ägq°ôwƤg“I
ìd,ò:• <Üè,.³í$ُ}zè8F­U¤Ìýdv||êf2Š½Ù¨@¾×Á>–‰Áö“LF`Q'ùN¥ùÁÚ-ÅÚ­ÎÂ4ӁÌsp:Žœ½X¨¤43=iŠUé\oÌ
pfâz4±¦ ùô?őïÅÁÙå6љXG0x·Óÿ
Œ\¨ƒ÷r#ö‘Éíev•—Åþù¨“{·g"”Zúç™`ðöLŠÜœçJ\Ã(ƒÍXùOçI®ìÝýPy9ÈMåµw*TþÄZÏÁË?E´ôg'‡;–æîÍܽH$ÛÃ=™
ݬªü¥_ÞZƒÝ¥/²£Õ¹m8A—+®¥
  * ''Lib/lib-tk/Tkinter.py'' in any Python distribution.
Line 227: Line 24:
+ìJ*xàˆ‘–)›o³䆻ø¾·c(öF4°ªY¸¬.ädÉÊ%+<•›Ï:ø!ՁKYpóæò*S:ƒ„\ú¯^Y&Ü\ÉX}Ra(íÜ(îÝ$;Êw2¹ÉeøpÿÛGLôÂb ÷‰îŸ.0âQ

djSL'†î«m€1Í+
ìÐ^=ôÆݨQñæ䴈×S”v6{ØÿNz½
šÙª:€vY}7q2ÜÄËá&0y‡Åbx/@ÇFÄåF%+éA5:pÉW
‡ù«Ž”µ-YÔÛ¢‘4½-9ÒÛ¢‘½-ÐÛ¢ðލøö¶h„³³E P¸êY4ÇÑ Mìke"iÛw
Ðt Ô¥Æ»™Øf"Ýy¶ˆÖ»Ý%–«ýÚкŠrú|±\™L'ÛÞ™¹iðlMþ§;‘+Xõ
ýlàÐ_ÛŽ÷w¦Â^ÔK—|
Ÿpaòd¡¼ŠD w:
eæ]Ë;QFû¯Ú[¹UFoç†õ³ÚÚaÉí
¶
zûH8ûŸUŽcÐ9™N[\é3NŠáiK^¶ÿ"CµCCXœ:=g„¹†À.vщ
Qs÷za@qÁ•
¾
hŸÐW\øömŒ)ýw¥è™ö ýw
ë™ö1?ºãËVš÷ðÕ#M¯{î^èHg›}t˜½ò°`ÏàAs=‰Kû$‘X°gð#ùô΃¾¹Qò”
‹
ePØápœlt_ØA©Éޔá;@5֌Á¦µ
[t¿ËŸÊþþÅ-¨ÒåZ³w:Ï[FJi
ým¯MÿzÖ¢yTÊe?—äÒ£Ñæ-3J+òÉÕ;FŒ‡>hXd€†•B¨%?Ú×<eM¤C†G‹-Ëeô#+ó‚­Ì%ˆWFª›„õWËìmÏ
fÝ$PØjÖM
 * Other prominent Tcl/Tk sites:
  * [[http://www.tcl.tk|Tcl Developer Xchange]]
  * [[http://sourceforge.net/projects/tcl|Tcl project at SourceForge]]
  * [[http://sourceforge.net/projects/tcl-foundry/|Tcl foundry at SourceForge]]
Line 249: Line 29:
Z-+ë&5ZÝ$°ZªF{ŒªšÊqŠ]7« r%@ðh
ñ&€Æoh
ñ&€†‹w?d<ñ&°ØÚPjjU¼ |
óU¿UśbkƒS»â7£CÝC+Ý_nGo
 * Other Tcl/Tk related links:
  * [[http://pypi.python.org/pypi/pytkgen|Simple toolsuite to create Tkinter GUIs on the fly from JSON files]]
Line 254: Line 32:
 ¦x(ì贉7
¯p2¡Æ*¥ŽÀG¼  qěG¼  qěG¼  áâÝO¼ ,¶6”šZoˆ-%¨*Þ¾Âц'Ågýoo
== Tkinter Extensions ==
 * [[Pmw]] (http://pmw.sourceforge.net)
 * [[Tix]] (http://www.python.org/doc/current/lib/module-Tix.html)
 * TkZinc (http://www.tkzinc.org)
 * [[Tkinter3000]] (http://tkinter.effbot.org)
 * [[How Tkinter can exploit Tcl/Tk extensions]]
Line 257: Line 39:
 ¦x(ìèÔµ\¤XìÕX¥xXø
'
&7Ç©qěàÑ8âM#ÞÐ8âM
ï~ÈxâM`±µ¡ÔÔªx@ly(AUñ&€ØÚð¤xãdüíâM °Ôo
== Comments ==
MythDebunking: ''TkInter is ugly on Windows'' (http://wiki.tcl.tk/8646)
Line 262: Line 42:
š –:G`±Tc•âM`a¾
o_y.ˆãÑ8âMðh
ñ&€Æoh¸x÷CÆo‹­
¥¦VśbËC ªŠ7Äֆ'ÅçÈoo
== Checking your Tkinter support ==
A good way to systematically check whether your Tkinter support is working is the following.
Line 267: Line 45:
 ¦x(ìèÔµo‹
 «”:k
ñ&€01‹7„¯<„³ˆ¦qěàÑ8âM
ï~ÈxâM`±µ¡ÔÔªx@ly(AUñ&€ØÚ`÷ÙÂ~QòöÔiKP÷
v5³– Q
ƒßåFfp Jöï<xÈ ¶¤ÕÅwZÿðh»ç- BF©u¤4né¾Ç]:•ƒóEÇI‚ë.¼OîL£
¦Ôã7pz¨z\'كCÐOsŸÂ‘ô°³ÜZƒBö
WqÃ] âXmlÏùÀ‹x¨ª¸ÿ·-¨ðˆØ°‰

àDTªØð^îAÂíîupË®xìÈьC7‹Ýñk(÷Þ£=šý6v'xGŸq§xçyøŠ‹j³ƒp8
»Ô×CÙ:rGÌàÃe‚‡p ÿkæ‚Þ g
ž_È(ú"ð@šÑiû«‘Ü÷tzŒ°fj­Ñq{û
7ˆcOž2éP팻´N´çI²×2ƒ^
cþUÛʁ'Ñ
§¤Ûëڒ
ԑ~èÛáSþæÿÿPK!-ï-ü¶word/fontTable.xml̔ݎÚ0
ï+õ
"ß/qww‰6¬(-RozQmÀ‡XõOä1dyûNœ€*±´°«V
Enter an interactive Python interpreter in a shell on an X console.
Line 286: Line 47:
™ÌÉäÓ?<>ì¤ålE² %‰´Â­•ÝTäûÓòæž$¸]sí¬¬È^yœ½÷Еµ³ì·PQ‘&„¶LS4
&®•‹µó†üë7©áþǶ½δ<¨•Ò*ìӜÒ[2ÚøK\\]+!?9±5҆؟z©ÑÑYhT
·î·Îùu띐øÎF~†+{´É؉‘QÂ;pu˜àˤÃDio
íWF“ĈòËÆ:ÏWÙu#³\ҕ–ç^q
å–[2ÃʎëŠÐœ~¤·”áïáËHÚ÷‹†{áx#
䚥÷:0ZDsÐw
 ˆã
%P,laE+ò™RšÏ—K2(YE¨ÜݳbTr
jøLG¥8*˜
,úÄ[²Áô»âœéœ
®ÕÊ«3$–ôÃHÑ¯þ2‰
'Î%ÁP˜/ŽÊU$¦‘èå$ž”‘|•]òÍnÏÉ1Ra‘Lq}c–ÞšìŸdÃm½’¾gr†Æ
²˜Æ„ô9aWÑ0n-½}aUjõ,×ÿߞ\~†CŸ†!}:®Û“×¥âtO({aOâù€çÌoNŒ?îÉxtÀì'ÿÿPK!íÅÜ×docProps/app.xml ¢( œSMoÛ0
½Ø0|o”nèFŐbèa[ÄmϚL'ÂdIØ Ù¯e7Ž³í4
?D>=RpûÚÚâ€1ïVål2-
tÚ×ÆíVåcõåê¦,)W+ë
®Ê#¦òV¾›èF2˜
.áÒªÜ
¥Iï±UiÂaǑÆÇV›q'|Ӎw^¿´èḨӏ_ ]õU
–}Ååþ·híu旞ªc`Â*lƒU„ò{¦cA
¨<)[™åìšýƒµÃ$g zÏ>ÖI~¸Ñ#XïUTšX<¹Xðݑ
ŸC°F+bYå7££O¾¡â¡ È÷AŒS€EÙ¢~‰†Žr
blÂWã˜È
D˜XT»¨ÂþÝ`ÁV+‹k~¹l”Mâì€{Tyªe˜/
hy@M>Éüâ¹ÎËâ‡J˜õZ•rĺå´Þè°
‰¢¬
Y®Í±Þîà8mŒÍu–s\&fgρ—ìºé¡á—Ò?ÈÎÆd;=՝
züQuíܑ۠›ˆþ™
Cåïò®¼ixé
MýÙÐ~”æá,>ñ#ÏóE`Ë[‚5ôTïì€{–;Úܔïº
Ö§œ¿y£žúʋ:™òéVèäã5
>ü
ÿÿPK-! $‡‚Ž[Content_Types].xmlPK-!
‘·óN
º_rels/.relsPK-!|;—9"¹
Þword/_rels/document.xml.relsPK-!K%&ƒ}úB word/document.xmlPK-!0ÝC)¨¤î
word/theme/theme1.xmlPK-!X?­¶‹åÉword/settings.xmlPK-! N¬ƒword/webSettings.xmlPK-!$iEÂJ=·word/stylesWithEffects.xmlPK-!‡]øT
±!docProps/core.xmlPK-!¡¹
Ö@Y:<$word/styles.xmlPK-!-ï-ü¶©+word/fontTable.xmlPK-!íÅÜ×Õ-docProps/app.xmlPK

ç0
=== Step 1 - can _tkinter be imported? ===
Try the following command at the Python prompt:

{{{>>> import _tkinter # with underscore, and lowercase 't'}}}

 * If it works, go to step 2.

 * If it fails with "No module named _tkinter", your Python configuration needs to be modified to include this module (which is an extension module implemented in C). Do **not** edit Modules/Setup (it is out of date). You may have to install Tcl and Tk (when using RPM, install the -devel RPMs as well) and/or edit the setup.py script to point to the right locations where Tcl/Tk is installed. If you install Tcl/Tk in the default locations, simply rerunning "make" should build the _tkinter extension.

 * If it fails with an error from the dynamic linker, see above (for Unix, check for a header/library file mismatch; for Windows, check that the TCL/TK DLLs can be found).

=== Step 2 - can Tkinter be imported? ===
Try the correct command for your version at the Python prompt:

{{{>>> import Tkinter # no underscore, uppercase 'T' for versions prior to V3.0}}}

{{{>>> import tkinter # no underscore, lowercase 't' for V3.0 and later}}}

 * If it works, go to step 3.

 * If it fails with "No module named Tkinter", your Python configuration need to be changed to include the directory that contains Tkinter.py in its default module search path. You have probably forgotten to define TKPATH in the Modules/Setup file. A temporary workaround would be to find that directory and add it to your PYTHONPATH environment variable. It is the subdirectory named "lib-tk" of the Python library directory (when using Python 1.4 or before, it is named "tkinter").

=== Step 3 - does Tkinter work? ===
Try the correct command for your Python version at the Python prompt:

{{{>>> Tkinter._test() # note underscore in _test and uppercase 'T' for versions prior to V3.0 }}}

{{{>>> tkinter._test() # note underscore in _test and lowercase 'T' for V3.0 and later}}}

 * This should pop up a small window with two buttons. Clicking the "Quit" button makes it go away and the command return. If this works, you're all set. (When running this test on Windows, from Python run in a MS-DOS console, the new window somehow often pops up *under* the console window. This can also occur when using iTerm on Mac OS X. Move it aside or locate the Tk window in the Taskbar / Dock.)
 * If this doesn't work, study the error message you get; if you can't see how to fix the problem, [[news:comp.lang.python|ask for help]].

----
[[CategoryPyGUI]]

Tkinter is Python's de-facto standard GUI (Graphical User Interface) package. It is a thin object-oriented layer on top of Tcl/Tk.

Tkinter is not the only GuiProgramming toolkit for Python. It is however the most commonly used one. CameronLaird calls the yearly decision to keep TkInter "one of the minor traditions of the Python world."

Tkinter Documentation

Tkinter Extensions

Comments

MythDebunking: TkInter is ugly on Windows (http://wiki.tcl.tk/8646)

Checking your Tkinter support

A good way to systematically check whether your Tkinter support is working is the following.

Enter an interactive Python interpreter in a shell on an X console.

Step 1 - can _tkinter be imported?

Try the following command at the Python prompt:

>>> import _tkinter # with underscore, and lowercase 't'

  • If it works, go to step 2.
  • If it fails with "No module named _tkinter", your Python configuration needs to be modified to include this module (which is an extension module implemented in C). Do **not** edit Modules/Setup (it is out of date). You may have to install Tcl and Tk (when using RPM, install the -devel RPMs as well) and/or edit the setup.py script to point to the right locations where Tcl/Tk is installed. If you install Tcl/Tk in the default locations, simply rerunning "make" should build the _tkinter extension.
  • If it fails with an error from the dynamic linker, see above (for Unix, check for a header/library file mismatch; for Windows, check that the TCL/TK DLLs can be found).

Step 2 - can Tkinter be imported?

Try the correct command for your version at the Python prompt:

>>> import Tkinter # no underscore, uppercase 'T' for versions prior to V3.0

>>> import tkinter # no underscore, lowercase 't' for V3.0 and later

  • If it works, go to step 3.
  • If it fails with "No module named Tkinter", your Python configuration need to be changed to include the directory that contains Tkinter.py in its default module search path. You have probably forgotten to define TKPATH in the Modules/Setup file. A temporary workaround would be to find that directory and add it to your PYTHONPATH environment variable. It is the subdirectory named "lib-tk" of the Python library directory (when using Python 1.4 or before, it is named "tkinter").

Step 3 - does Tkinter work?

Try the correct command for your Python version at the Python prompt:

>>> Tkinter._test() # note underscore in _test and uppercase 'T' for versions prior to V3.0 

>>> tkinter._test() # note underscore in _test and lowercase 'T' for V3.0 and later

  • This should pop up a small window with two buttons. Clicking the "Quit" button makes it go away and the command return. If this works, you're all set. (When running this test on Windows, from Python run in a MS-DOS console, the new window somehow often pops up *under* the console window. This can also occur when using iTerm on Mac OS X. Move it aside or locate the Tk window in the Taskbar / Dock.)
  • If this doesn't work, study the error message you get; if you can't see how to fix the problem, ask for help.


CategoryPyGUI

TkInter (last edited 2022-02-08 22:05:48 by martinmiller)

Unable to edit the page? See the FrontPage for instructions.