ÀÖÓãµç¾º

½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

Python¿ª·¢£ºÊý×ÖÍÆÅÌÓÎÏ·µÄ¶¯Ì¬Ð§¹û»æÖÆ

¸üÐÂʱ¼ä:2022Äê07ÔÂ26ÈÕ15ʱ26·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

ºÃ¿Ú±®ITÅàѵ

´ó¶àÊýÓÎÏ·¶¼Éæ¼°¶¯Ì¬Ð§¹û£¬ÈçÖ²Îï´óÕ½½©Ê¬ÖÐ×Óµ¯µÄ·¢ÉäЧ¹û¡¢½©Ê¬µÄÒÆ¶¯Ð§¹ûµÈ¡£ÊµÏÖ¶¯Ì¬Ð§¹ûµÄÔ­ÀíÊÇÎı¾»òͼƬµÄ¸ü»»¡¢Î»ÖõĸıäÒÔ¼°ÆÁÄ»µÄˢС£»ù´¡µÄ¶¯Ì¬Ð§¹û·ÖΪÒÔÏÂ3ÖÖ¡£

(1)¶à´ÎÐÞ¸ÄSurface¶ÔÏó»æÖƵÄλÖò¢Á¬Ðø»æÖÆË¢Ð£¬ÊµÏÖÒÆ¶¯Ð§¹û¡£

(2)ÔÚͬһλÖûæÖƲ»Í¬µÄSurface¶ÔÏó£¬ÊµÏÖ¶¯»­Ð§¹û¡£

(3)Á¬Ðø»æÖƲ»Í¬Surface¶ÔÏóµÄͬʱ£¬Ð޸ĻæÖƵÄλÖã¬ÊµÏÖÒÆ¶¯µÄ¶¯»­¡£

ÕâÀïÒÔÊý×ÖÍÆÅÌÓÎÏ·Öз½¿éµÄÒÆ¶¯ÎªÀý½²½âÈçºÎʵÏÖÒÆ¶¯Ð§¹û¡£

Êý×ÖÍÆÅÌÓÎÏ·µÄ·½¿éÓɾØÐκÍÎı¾×é³É£¬ÆäÖÐÎı¾Ê¹ÓÃfontÄ£¿éµÄFont()º¯Êý¡¢render()·½·¨ÒÔ¼°Surface ÀàµÄblit()·½·¨»æÖÆ£¬¾ØÐÎʹÓÃpygame ÖÐdrawÄ£¿éµÄ rect()º¯Êý»æÖÆ¡£Òò´ËʵÏÖÊý×Ö·½¿éÒÆ¶¯ÐèÒª¾­¹ýÒÔÏÂ×÷¡£

(1)»æÖƾØÐη½¿é¡£

(2)»æÖÆÊý×Ö¡£

(3)ÒÆ¶¯·½¿é¡£

ÏÂÃæ·Ö±ðʵÏÖÒÔÉϲÙ×÷¡£

1.»æÖƾØÐη½¿é

pygame µÄ×ÓÄ£¿édraw ÖеÄrect()º¯ÊýÓÃÓÚÔÚSurface ¶ÔÏóÉϵÄÖ¸¶¨Î»ÖûæÖƾØÐΣ¬

¸Ãº¯ÊýµÄÉùÃ÷ÈçÏ£º

¡¡ rect (Surface, color, Rect, width=0) -> Rect

rect( )º¯Êý½ÓÊÕ4¸ö²ÎÊý£¬ÆäÖвÎÊýSurface ½ÓÊÕÒ»¸öSurface¶ÔÏ󣬲ÎÊýcolorÓÃÓÚÉèÖþØÐÎÑÕÉ«£¬²ÎÊýRect½ÓÊÕÒ»¸ö¾ØÐζÔÏó£¬ÒÔÉèÖþØÐλæÖƵÄλÖúÍÇøÓò£¬²ÎÊýwidthÓÃÓÚÉèÖÃÍâÑØµÄºñ¶È£¬Ä¬ÈÏΪ0¡£rect()º¯Êý±»µ÷Óúó»á·µ»ØÒ»¸ö¾ØÐζÔÏó¡£ÔÚ´°ÌåSurface¶ÔÏóWINSETµÄÖÐÐÄλÖûæÖÆ·Ö±æÂÊΪ60ÏñËØ×60ÏñËØµÄ»ÆÉ«¾ØÐΣ¬¾ßÌå´úÂëÈçÏ£º

¡¡ BLOCKSIZE =60                        #¶¨Ò徨Ðα߳¤
¡¡ # ´´½¨¾ØÐÎ
¡¡ blockRect = pygame.Rect (0.5*(WINWIDTH-BLOCKSIZE),
¡¡¡¡                        0.5* (WINHEIGHT-BLOCKSIZE),
¡¡¡¡                        BLOCKSIZE, BLOCKSIZE)
¡¡ pygame.draw.rect (WINSET,  BTCOLOR,  blockRect )    #»æÖƾØÐÎ

½«´Ë¶Î´úÂëÌí¼Óµ½³ÌÐò7-pg-test-pyÖУ¬Ö´ÐгÌÐò£¬³ÌÐòÖ´Ðнá¹ûÈçÏÂͼËùʾ¡£
1658818615478_³õʼ»¯.jpg

2.»æÖÆÊý×Ö

·½¿éÉϵÄÊý×ÖӦλÓÚ·½¿éµÄÖÐÐÄ£¬¾ØÐζÔÏóµÄ×óÉϽÇ×ø±ê´ú±í¾ØÐεÄλÖã¬Ä¿Ç°·½¿éÒÑλÓÚÆÁÄ»ÖÐÐÄ£¬¼ÙÉèÊý×ֵľØÐζÔÏóΪnumRect£¬ÔòÆäÔÚÆÁÄ»ÖеÄx¡¢y×ø±ê·Ö±ðÈçÏ¡£

(1)numRect.x=blockRect.x+0.5*(BLOCKSIZE-numRect.width)

(2) numRect.y =blockRect.y +0.5*(BLOCKSIZE-numRect.heigh)

¼ÙÉè·½¿éÖеÄÊý×ÖΪ5£¬»æÖÆÊý×Ö£¬½«ÆäÖÃÓÚ·½¿éÖÐÐÄ£¬¾ßÌå´úÂëÈçÏ£º

¡¡ # дÊý×Ö
¡¡ numSurf = BASICFONT.render('5', True, BTTEXTCOLOR, BTCOLOR)
¡¡ numRect = numSurf.get_rect()
   numRect.x = blockRect.x + 0.5 * (BLOCKSIZE - numRect.width)
   numRect.y = blockRect.y + 0.5 * (BLOCKSIZE - numRect.height)

ÓÉÓÚÊý×ÖλÖõÄÈ·¶¨ÒÀÀµÓÚ·½¿éµÄλÖ㬴˶δúÂëӦλÓÚ·½¿é´úÂëÖ®ºó¡£

3.ÒÆ¶¯·½¿é

ÒÆ¶¯Ð§¹ûͨ¹ýÔÚ²»Í¬µ«Á¬ÐøµÄλÖûæÖÆÍ¬Ò»¸öSruface¶ÔÏóʵÏÖ¡£ÍÆÅÌÖеķ½¿éÓÉ·½¿éͼÏñblockSurfºÍÊý×ÖͼÏñnumSurf×é³É£¬Òò´ËҪʵÏÖÍÆÅÌ·½¿éµÄÒÆ¶¯£¬Ðèͬ²½Òƶ¯·½¿éͼÏñºÍÊý×ÖͼÏñ¡£ÔÚforÑ­»·ÖÐʵÏÖblockSurfºÍnumSurfµÄÁ¬ÐøÒƶ¯Óë»æÖÆ£¬¾ßÌå´úÂëÈçÏ£º

   ...
   # ÔÚ±³¾°µÄ²»Í¬Î»ÖûæÖÆ·½¿é£¬ÖÆÔìÒÆ¶¯Ð§¹û¡£·½¿éÏòÓÐÒÆ¶¯BLACKSIZE+2
   SIZE), BLOCKSIZE, BIOCKSIZE)
   pygane.draw.rect (WINSET, BTCOLOR, blockRect)
   # дÊý×Ö
   numSurf - BASICFONT.render('5', True, BTTEXTCOLOR, BTCOLOR)
   nunRect = nunSurf.get_rect()
   numRect.x  blockRect.x + 0.5 * (BLOCKSI2E - numRect.width)
   numRect.y = blockRect.y + 0.5*(BIOCKSIZE - numRect.height)
   # ÔÚ±³¾°µÄ²»Í¬Î»ÖûæÖÆ·½¿é£¬ÖÆÔìÒÆ¶¯Ð§¹û¡£·½¿éÏòÓÒÒÆ¶¯BLOCKSIZE+2
   for i in range(0, BLOCKSIZE, 2):
       FPSCLOCK.tick(EPS)
       # »æÖÆ
       Pygame.draw.rect(WINSET,BTCOLOR,blockRect)
       WINSET.blit(numSurf,numRect)
       pygame.display.update ()        
       # Ð޸ķ½¿éºÍÊý×ֵĺá×ø±ê
       blockRect.x +=10                # Ð޸ķ½¿éºá×ø±ê
       numRect.x +e 10                 # ÐÞ¸ÄÊý×Öºá×ø±ê
       WINSET.blit(baseSurf,(0,0))     # ʹÓñ¸·ÝbaseSurf¸²¸ÇWINSET
   pygame.quit()                       # Ð¶ÔØËùÓÐÄ£¿é
if __name__ == '__main__':
      main()

±£´æ¸ü¸Ä²¢Ö´ÐгÌÐò7_pg.test.py£¬³ÌÐòÔËÐÐÖ®³õÓë½áÊøÖ®Ç°·½¿éËùÔÚλÖ÷ֱðÈçͼaºÍbËùʾ¡£

ÓÉͼÏÂͼ¿ÉÖª£¬³ÌÐò³É¹¦ÊµÏÖÁË·½¿éµÄÒÆ¶¯¡£

1658818770046_·½¿éÒÆ¶¯1.jpg1658818776037_·½¿éÒÆ¶¯2.jpg

0 ·ÖÏíµ½£º
ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿