Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ʹÓÃPythonÖеÄtkinterÄ£¿é×÷ͼµÄ·½·¨
 
×÷Õߣº Zoctopus
  4100  次浏览      40
 2019-11-18
 
±à¼­ÍƼö:
±¾Îĸø´ó¼Ò½éÉÜtkinterÄ£¿é(¡°Tk ½Ó¿Ú¡±)ÊÇPythonµÄ±ê×¼Tk GUI¹¤¾ß°üµÄ½Ó¿Ú£¬PythonÖеÄtkinterÄ£¿é×÷ͼ½Ì³Ì£¬Ï£Íû¶Ô´ó¼ÒÓаïÖú¡£
±¾ÎÄÀ´×ÔÓÚ±à³Ì¿ÎÕ»£¬ÓÉ»ðÁú¹ûÈí¼þDelores±à¼­£¬ÍƼö¡£

python¼òÊö£º

PythonÊÇÒ»ÖÖ½âÊÍÐÍ¡¢ÃæÏò¶ÔÏó¡¢¶¯Ì¬Êý¾ÝÀàÐ͵ĸ߼¶³ÌÐòÉè¼ÆÓïÑÔ¡£×Ô´Ó20ÊÀ¼Í90Äê´ú³õPythonÓïÑÔµ®ÉúÖÁ½ñ£¬ËüÖð½¥±»¹ã·ºÓ¦ÓÃÓÚ´¦Àíϵͳ¹ÜÀíÈÎÎñºÍWeb±à³Ì¡£PythonÒѾ­³ÉΪ×îÊÜ»¶Ó­µÄ³ÌÐòÉè¼ÆÓïÑÔÖ®Ò»¡£2011Äê1Ô£¬Ëü±»TIOBE±à³ÌÓïÑÔÅÅÐаñÆÀΪ2010Äê¶ÈÓïÑÔ¡£×Ô´Ó2004ÄêÒÔºó£¬pythonµÄʹÓÃÂÊÊdzÊÏßÐÔÔö³¤¡£

tkinterÄ£¿é½éÉÜ

tkinterÄ£¿é(¡°Tk ½Ó¿Ú¡±)ÊÇPythonµÄ±ê×¼Tk GUI¹¤¾ß°üµÄ½Ó¿Ú.TkºÍTkinter¿ÉÒÔÔÚ´ó¶àÊýµÄUnixƽ̨ÏÂʹÓÃ,ͬÑù¿ÉÒÔÓ¦ÓÃÔÚWindowsºÍMacintoshϵͳÀï.,Tk8.0µÄºóÐø°æ±¾¿ÉÒÔʵÏÖ±¾µØ´°¿Ú·ç¸ñ,²¢Á¼ºÃµØÔËÐÐÔÚ¾ø´ó¶àÊýƽ̨ÖС£

ÓÉÓÚTkinterÊÇÄÚÖõ½pythonµÄ°²×°°üÖС¢Ö»Òª°²×°ºÃPythonÖ®ºó¾ÍÄÜimport Tkinter¿â¡¢¶øÇÒIDLEÒ²ÊÇÓÃTkinter±àд¶ø³É¡¢¶ÔÓÚ¼òµ¥µÄͼÐνçÃæTkinter»¹ÊÇÄÜÓ¦¸¶×ÔÈç¡£

ÏÔʾÎÄ×Ö

ÓÃcreate_textÔÚ»­²¼ÉÏд×Ö¡£Õâ¸öº¯ÊýÖ»ÐèÒªÁ½¸ö×ø±ê£¨ÎÄ×ÖxºÍyµÄλÖã©£¬»¹ÓÐÒ»¸ö¾ßÃû²ÎÊýÀ´½ÓÊÜÒªÏÔʾµÄÎÄ×Ö¡£ÀýÈ磺

>>> from tkinter import*>>> tk =
Tk()>>> canvas = Canvas(tk,width=400,
height=400)>>> canvas.pack()>>> canvas.create_text(150,100,
text='Happy birthday to you')

create_textº¯Êý»¹Óм¸¸öºÜÓÐÓõIJÎÊý£¬±È·½Ëµ×ÖÌåÑÕÉ«µÈ¡£ÔÚÏÂÃæµÄ´úÂëÖУ¬ÎÒÃǵ÷ÓÃcreate_textº¯ÊýʱʹÓÃÁË×ø±ê£¨130,120£©£¬»¹ÓÐÒªÏÔʾµÄÎÄ×Ö£¬ÒÔ¼°ºìÉ«µÄÌî³äÉ«£º

canvas.create_text(130,120,
text='Happy birthday to you!',
fill='red')

ÎÒÃÇ»¹¿ÉÒÔÖ¸¶¨×ÖÌ壬·½·¨ÊǸø³öÒ»¸ö°üº¬×ÖÌåÃûºÍ×ÖÌå´óСµÄÔª×é¡£ÀýÈç´óСΪ20µÄTimes×ÖÌå¾ÍÊÇ£¨'Times',20£©£º

>>> canvas.create_text(150,150,
text='Happy birthday',
font=('Times',15))>>>
canvas.create_text(200,200,
text='Happy birthday',
font=('Courier',22))>>>
canvas.create_text(220,300,
text='Happy birthday',
font=('Couried',30))

ÏÔʾͼƬ

ÒªÓÃtkinterÔÚ»­²¼ÉÏÏÔʾͼƬ£¬Ê×ÏÈҪװÈëͼƬ£¬È»ºóʹÓÃcanvas¶ÔÏóÉϵÄcreate_imageº¯Êý¡£

ÕâÊÇÎÒ´æÔÚEÅÌÉϵÄÒ»ÕÅͼƬ£º

ÎÒÃÇ¿ÉÒÔÕâÑùÀ´ÏÔʾone.gifͼƬ£º

>>> from tkinter import*>>>
tk = Tk()>>> canvas = Canvas
(tk,width=400,height=400)>>>
canvas.pack()>>> my_image =
PhotoImage(file='
E:\\FFOutput\\one.gif')>>>
canvas.create_image(0,0,
anchor = NW,image = my_image) >>>
canvas.create_image
(50,50,anchor = NW,image = my_image)

ÔÚµÚÎåÐÐÖУ¬°ÑͼƬװÈëµ½±äÁ¿my_imageÖС£×ø±ê(0,0)/(50,50)ÊÇÎÒÃÇÒªÏÔʾͼƬµÄλÖ㬠anchor=NWÈú¯ÊýʹÓÃ×óÉϽÇ(northwest Î÷±±·½)×÷Ϊ»­Í¼µÄÆðʼµã£¬×îºóÒ»¸ö¾ßÃû²ÎÊýimageÖ¸Ïò×°ÈëµÄͼƬ¡£

×¢£ºÓÃtkinterÖ»ÄÜ×°ÈëGIFͼƬ£¬Ò²¾ÍÊÇÀ©Õ¹ÃûÊÇ.gifµÄͼƬÎļþ¡£

ÏëÒªÏÔʾÆäËûÀàÐ͵ÄͼƬ£¬ÈçPNGºÍJPG£¬ÐèÒªÓõ½ÆäËûµÄÄ£¿é£¬±ÈÈçPythonͼÏñ¿â¡£

´´½¨»ù±¾µÄ¶¯»­

´´½¨Ò»¸öÌîÁËÉ«µÄÈý½ÇÐΣ¬ÈÃËüÔÚÆÁÄ»ÉϺáÏòÒÆ¶¯£º

import timefrom tkinter import*tk
= Tk()canvas = Canvas
(tk,width=400,height=200)
canvas.pack()canvas.create_polygon
(10,10,10,60,50,35)
##´´½¨Èý½ÇÐÎfor x in range(0,60):
canvas.move(1,5,0)
##°ÑÈÎÒâ»­ºÃµÄ¶ÔÏóÒÆ¶¯µ½
°ÑxºÍy×ø±êÔö¼Ó¸ø¶¨ÖµµÄλÖÃ
tk.update() ##Ç¿ÖÆtkinter¸üÐÂÆÁÄ»£¨ÖØ»­£©
time.sleep(0.05)
##ÈóÌÐòÐÝÏ¢¶þÊ®·ÖÖ®Ò»Ã루0.05Ã룩£¬È»ºó¼ÌÐø

Èý½ÇÐκáÏòÒÆ¶¯

ÑÓÉìһϣ¬Èç¹ûÏëÈÃÈý½ÇÐÎÑØ¶Ô½ÇÏßÔÚÆÁÄ»ÉÏÒÆ¶¯£¬ÎÒÃÇ¿ÉÒÔµÚ8ÐÐΪ£º

import timefrom tkinter
import*tk = Tk()canvas = Canvas
(tk,width=400,height=400)
canvas.pack()canvas.create_polygon
(10,10,10,60,50,35)
##´´½¨Èý½ÇÐÎfor x in range(0,60):
canvas.move(1,5,5)
##°ÑÈÎÒâ»­ºÃµÄ¶ÔÏóÒÆ¶¯µ½
°ÑxºÍy×ø±êÔö¼Ó¸ø¶¨ÖµµÄλÖà tk.update()
##Ç¿ÖÆtkinter¸üÐÂÆÁÄ»£¨ÖØ»­£© time.sleep(0.05)
##ÈóÌÐòÐÝÏ¢¶þÊ®·ÖÖ®Ò»Ã루0.05Ã룩£¬È»ºó¼ÌÐø

Èý½ÇÐÎÑØ¶Ô½ÇÏßÒÆ¶¯

Èç¹ûÒªÈÃÈý½ÇÐÎÔÚÆÁÄ»ÉÏÑØ¶Ô½ÇÏ߻ص½¿ªÊ¼µÄλÖã¬ÒªÓÃ-5,-5£¨ÔÚ½áβ´¦¼ÓÉÏÕâ¶Î´úÂ룩

import timefrom tkinter
import*tk = Tk()canvas =
Canvas(tk,width=400,height=400)
canvas.pack()canvas.create_polygon
(10,10,10,60,50,35)
##´´½¨Èý½ÇÐÎfor x in range(0,60):
canvas.move(1,5,5)
##°ÑÈÎÒâ»­ºÃµÄ¶ÔÏóÒÆ¶¯µ½
°ÑxºÍy×ø±êÔö¼Ó¸ø¶¨ÖµµÄλÖà tk.update()
##Ç¿ÖÆtkinter¸üÐÂÆÁÄ»£¨ÖØ»­£© time.sleep(0.05)
##ÈóÌÐòÐÝÏ¢¶þÊ®·ÖÖ®Ò»Ã루0.05Ã룩£¬
È»ºóÔÙ¼ÌÐøfor x in range(0,60):
canvas.move(1,-5,-5) tk.update() time.sleep(0.05)

¶Ô½ÇÏßÔ˶¯²¢»Øµ½³õʼλÖÃ

ÈöÔÏó¶Ô²Ù×÷Óз´Ó¦

ÎÒÃÇ¿ÉÒÔÓá°ÏûÏ¢°ó¶¨¡±À´ÈÃÈý½ÇÐÎÔÚÓÐÈ˰´ÏÂij¼üʱÓз´Ó¦¡£

Òª¿ªÊ¼´¦Àíʼþ£¬ÎÒÃÇÊ×ÏÈÒª´´½¨Ò»¸öº¯Êý¡£µ±ÎÒÃǸæËßtkinter½«Ä³¸öÌØ¶¨º¯Êý°óµ½£¨»ò¹ØÁªµ½£©Ä³¸öÌØ¶¨Ê¼þÉÏʱ¾ÍÍê³ÉÁ˰󶨡£

»»¾ä»°Ëµ£¬tkinter»á×Ô¶¯µ÷ÓÃÕâ¸öº¯ÊýÀ´´¦Àíʼþ¡£

ÀýÈ磬ҪÈÃÈý½ÇÐÎÔÚ°´Ï»سµ¼üÊ±ÒÆ¶¯£¬ÎÒÃÇ¿ÉÒÔ¶¨ÒåÕâ¸öº¯Êý£º

def movetriangle(event):
canvas.move(1,5,0)

Õâ¸öº¯ÊýÖ»½ÓÊÜÒ»¸ö²ÎÊý£¨event£©£¬tkinterÓÃËüÀ´¸øº¯Êý´«µÝ¹ØÓÚʼþµÄÐÅÏ¢¡£ÏÖÔÚÎÒÃÇÓû­²¼canvasÉϵÄbind_allº¯ÊýÀ´¸æËßtkinterµ±Ìض¨Ê¼þ·¢ÉúʱӦ¸Ãµ÷ÓÃÕâ¸öº¯Êý¡£´úÂëÈçÏ£º

from tkinter import*tk =
Tk()canvas = Canvas
(tk,width=400,height=400)
canvas.pack()canvas.create_polygon
(10,10,10,60,50,35)def movetriangle
(event): canvas.move(1,5,0)canvas.bind_all
('<KeyPress-Return>',movetringle)
##ÈÃtkinter¼àÊÓKeyPressʼþ£¬
µ±¸Ãʼþ·¢Éúʱµ÷ÓÃmovetriangleº¯Êý

ÄÇôÎÒÃÇÈçºÎ¸ù¾Ý°´¼üµÄ²»Í¬¶ø¸Ä±äÈý½ÇÐεķ½ÏòÄØ£¿±ÈÈçÓ÷½Ïò¼ü¡£

ÎÒÃÇ¿ÉÒÔ³¢ÊÔ¸ÄÏÂmovetriangleº¯Êý£º

def movetriangle(event):
if event.keysym == 'up':
canvas.move(1,0,-3)
##µÚÒ»¸ö²ÎÊýʹ»­²¼ÉÏËù»­µÄÐÎ×´µÄIDÊý×Ö£¬
µÚ¶þ¸öÊǶÔx£¨Ë®Æ½·½Ïò£©×ø±êÔö¼ÓµÄÖµ£¬
µÚÈý¸öÊǶÔy£¨´¹Ö±·½Ïò£©×ø±êÔö¼ÓµÄÖµ
elif event.keysym == 'down': canvas.move(1,0,3)
elif event.keysym == 'left': canvas.move(1,-3,0)
else canvas.move(1,3,0)

×îºó´úÂë»ã×ÜÔÚÒ»ÆðΪ£º

from tkinter import*tk =
Tk()canvas = Canvas
(tk,width=400,height=400)
canvas.pack()canvas.create_polygon
(10,10,10,60,50,35)def movetriangle
(event): if event.keysym == 'Up':
canvas.move(1,0,-3)
##µÚÒ»¸ö²ÎÊýʹ»­²¼ÉÏËù»­µÄÐÎ×´µÄIDÊý×Ö£¬
µÚ¶þ¸öÊǶÔx£¨Ë®Æ½·½Ïò£©×ø±êÔö¼ÓµÄÖµ£¬
µÚÈý¸öÊǶÔy£¨´¹Ö±·½Ïò£©×ø±êÔö¼ÓµÄÖµ
elif event.keysym == 'Down':
canvas.move(1,0,3)
elif event.keysym == 'Left':
canvas.move(1,-3,0)
else: canvas.move(1,3,0)
canvas.bind_all
('<KeyPress-Up>',movetriangle)
##ÈÃtkinter¼àÊÓKeyPressʼþ£¬
µ±¸Ãʼþ·¢Éúʱµ÷ÓÃmovetriangleº¯Êýcanvas.bind_all
('<KeyPress-Down>',movetriangle)
canvas.bind_all
('<KeyPress-Left>',movetriangle)
canvas.bind_all
('<KeyPress-Right>',movetriangle)

·½Ïò¼ü¿ØÖÆÈý½ÇÐεÄÒÆ¶¯

¸ü¶àʹÓÃIDµÄ·½·¨

Ö»ÒªÓÃÁË»­²¼ÉÏÃæÒÔcreate_¿ªÍ·µÄº¯Êý£¬Ëü×ܻ᷵»ØÒ»¸öID¡£Õâ¸öº¯Êý¿ÉÒÔÔÚÆäËûµÄº¯ÊýÖÐʹÓá£

Èç¹ûÎÒÃÇÐ޸ĴúÂëÀ´°Ñ·µ»ØÖµ×÷Ϊһ¸ö±äÁ¿±£´æ£¬È»ºóʹÓÃÕâ¸ö±äÁ¿£¬ÄÇôÎÞÂÛ·µ»ØÖµÊǶàÉÙ£¬Õâ¶Î´úÂë¶¼Äܹ¤×÷£º

>>> mytriangle =
canvas.create_polygon
(10,10,10,60,50,35)>>>
canvas.move(mytriangle,5,0)

ÎÒÃÇ¿ÉÒÔÓÃitemconfigÀ´¸Ä±äÈý½ÇÐεÄÑÕÉ«£¬ÕâÐèÒª°ÑID×÷ΪµÚÒ»¸ö²ÎÊý£º

>>> canvas.itemconfig
(mytrigle,fill='bue')
##°ÑIDΪ±äÁ¿mytriangleÖеÄ
ÖµµÄ¶ÔÏóµÄÌî³äÑÕÉ«¸ÄΪÀ¶É«

Ò²¿ÉÒÔ¸øÈý½ÇÐÎÒ»Ìõ²»Í¬ÑÕÉ«µÄÂÖÀªÏߣ¬Í¬ÑùÊÊÓÃID×÷ΪµÚÒ»¸ö²ÎÊý£º

>>> canvas.itemconfig
(mytrigle,outline='red')

×ܽá×ö³öÁ˼òµ¥µÄ¶¯»­¡£Ñ§»áÁËÈçºÎÓÃʼþ°ó¶¨À´ÈÃͼÐÎÏìÓ¦°´¼ü£¬ÕâÔÚд¼ÆËã»úÓÎϷʱºÜÓÐÓá£ÔÚtkinterÖÐÒÔcreate¿ªÍ·µÄº¯ÊýÊÇÈçºÎ·µ»ØÒ»¸öIDÊý×Ö¡£

 
   
4100 ´Îä¯ÀÀ       40
Ïà¹ØÎÄÕÂ

ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖÓë̽ÌÖ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
Ïà¹ØÎĵµ

Android_UI¹Ù·½Éè¼Æ½Ì³Ì
ÊÖ»ú¿ª·¢Æ½Ì¨½éÉÜ
androidÅÄÕÕ¼°ÉÏ´«¹¦ÄÜ
Android½²ÒåÖÇÄÜÊÖ»ú¿ª·¢
Ïà¹Ø¿Î³Ì

Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
Androidϵͳ¿ª·¢
AndroidÓ¦Óÿª·¢
ÊÖ»úÈí¼þ²âÊÔ