⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 electrons.py

📁 reduced python source for embedded apps
💻 PY
字号:
#! /usr/bin/env python# Simulate "electrons" migrating across the screen.  # An optional bitmap file in can be in the background.## Usage: electrons [n [bitmapfile]]## n is the number of electrons to animate; default is 30.## The bitmap file can be any X11 bitmap file (look in# /usr/include/X11/bitmaps for samples); it is displayed as the# background of the animation.  Default is no bitmap.from Tkinter import *import random# The graphical interfaceclass Electrons:	# Create our objects	def __init__(self, n, bitmap = None):		self.n = n		self.tk = tk = Tk()		self.canvas = c = Canvas(tk)		c.pack()		width, height = tk.getint(c['width']), tk.getint(c['height'])		# Add background bitmap		if bitmap:			self.bitmap = c.create_bitmap(width/2, height/2,						      bitmap=bitmap,						      foreground='blue')		self.pieces = []		x1, y1, x2, y2 = 10,70,14,74		for i in range(n):			p = c.create_oval(x1, y1, x2, y2, fill='red')			self.pieces.append(p)			y1, y2 = y1 +2, y2 + 2		self.tk.update()	def random_move(self, n):		c = self.canvas		for p in self.pieces:			x = random.choice(range(-2,4))			y = random.choice(range(-3,4))			c.move(p, x, y)		self.tk.update()	# Run -- allow 500 movemens	def run(self):		try:			for i in range(500):				self.random_move(self.n)		except TclError:			try:				self.tk.destroy()			except TclError:				pass# Main programdef main():	import sys, string	# First argument is number of electrons, default 30	if sys.argv[1:]:		n = string.atoi(sys.argv[1])	else:		n = 30	# Second argument is bitmap file, default none	if sys.argv[2:]:		bitmap = sys.argv[2]		# Reverse meaning of leading '@' compared to Tk		if bitmap[0] == '@': bitmap = bitmap[1:]		else: bitmap = '@' + bitmap	else:		bitmap = None	# Create the graphical objects...	h = Electrons(n, bitmap)	# ...and run!	h.run()# Call main when run as scriptif __name__ == '__main__':	main()

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -