Tkinter इस तरह के एक साधारण काम के लिए एक उत्कृष्ट विकल्प है। आप लगभग निश्चित रूप से पहले ही इसे स्थापित कर चुके हैं, और Canvas विजेट उल्लेखनीय रूप से शक्तिशाली है। इसमें लाइनों को आकर्षित करने के लिए अंतर्निहित सुविधाएं हैं जिनके अंत में एक तीर है, और घूर्णन बहुत सीधी है।
टिंकर के बारे में "सामान्य ज्ञान" को न दें - यह एक आधुनिक, स्थिर और टूलकिट का उपयोग करने में बेहद आसान है। आप इसके साथ अगली फ़ोटोशॉप या आईमोवी नहीं बना सकते हैं, लेकिन ज्यादातर लोगों के लिए और अधिकांश ऐप्स के लिए यह एक बहुत ही ठोस, व्यावहारिक पसंद है।
import Tkinter as tk
import math
class ExampleApp(tk.Tk):
def __init__(self):
tk.Tk.__init__(self)
self.canvas = tk.Canvas(self, width=400, height=400)
self.canvas.pack(side="top", fill="both", expand=True)
self.canvas.create_line(200,200, 200,200, tags=("line",), arrow="last")
self.rotate()
def rotate(self, angle=0):
'''Animation loop to rotate the line by 10 degrees every 100 ms'''
a = math.radians(angle)
r = 50
x0, y0 = (200,200)
x1 = x0 + r*math.cos(a)
y1 = y0 + r*math.sin(a)
x2 = x0 + -r*math.cos(a)
y2 = y0 + -r*math.sin(a)
self.canvas.coords("line", x1,y1,x2,y2)
self.after(100, lambda angle=angle+10: self.rotate(angle))
app = ExampleApp()
app.mainloop()
स्रोत
2012-09-21 12:02:23
आप "अधिक पेशेवर" को कैसे परिभाषित करते हैं? वह बयान मुझे कोई समझ नहीं आता है। –
परिणामस्वरूप जीयूआई के देखो और महसूस से। मेरे पास वास्तव में WxPython के साथ कोई व्यक्तिगत हिस्सेदारी नहीं है, यह सिर्फ कुछ है जो मैंने लोगों को सुना है (टिंकर के संबंध में)। मुझे किसी भी तरह से परवाह नहीं है। – Harel