tkinter Canvas
üzerinde bir daire çizmek genellikle create_oval
yöntemiyle yapılır. Bununla birlikte, sınırlayıcı kutunun beslenmesi genellikle bir daire çizmeyi düşünmenin kafa karıştırıcı bir yoludur. Bunun için bir kısayol ile gelmek özellikle zor değil, ama benzer bir şey yapan başka bir kimseyi bulamadım, bu yüzden başka birinin yararlı bulduğu umuduyla yayınlayacağım.Tkinter (Python) içinde çizim daire
13
A
cevap
28
Burada, "Tkinter
sınıfı Canvas
sınıfına gerçekten üye eklediğimiz" maymun düzeltme eki "olarak bilinen bir numara. Aşağıda, üçüncü paragrafın ilgilenildiği tam işlevli bir program (Python 2.7) bulunmaktadır. Kodunuza ekleyin ve seçeneklerin create_oval
ile aynı olduğu yerleşik bir yöntem gibi tk.Canvas.create_circle(x, y, r, options...)
'u da işleyebilirsiniz. create_arc
(dördüncü paragraf) için benzer bir şey yapıyoruz ve extent
yerine end
açısını belirtme seçeneğini sunuyoruz.
import Tkinter as tk
root = tk.Tk()
canvas = tk.Canvas(root, width=200, height=200, borderwidth=0, highlightthickness=0, bg="black")
canvas.grid()
def _create_circle(self, x, y, r, **kwargs):
return self.create_oval(x-r, y-r, x+r, y+r, **kwargs)
tk.Canvas.create_circle = _create_circle
def _create_circle_arc(self, x, y, r, **kwargs):
if "start" in kwargs and "end" in kwargs:
kwargs["extent"] = kwargs["end"] - kwargs["start"]
del kwargs["end"]
return self.create_arc(x-r, y-r, x+r, y+r, **kwargs)
tk.Canvas.create_circle_arc = _create_circle_arc
canvas.create_circle(100, 120, 50, fill="blue", outline="#DDD", width=4)
canvas.create_circle_arc(100, 120, 48, fill="green", outline="", start=45, end=140)
canvas.create_circle_arc(100, 120, 48, fill="green", outline="", start=275, end=305)
canvas.create_circle_arc(100, 120, 45, style="arc", outline="white", width=6, start=270-25, end=270+25)
canvas.create_circle(150, 40, 20, fill="#BBB", outline="")
root.wm_title("Circles and Arcs")
root.mainloop()
Sonuç:
İlgili konular
- 1. Python Tkinter
- 2. Python Tkinter doğru telaffuz
- 3. Python tkinter label orientation
- 4. python tkinter dönüş değeri,
- 5. Python tkinter Sürgü kontrolü
- 6. Python Tkinter Enter Düğmesi
- 7. Python - yeniden çizim fonksiyonları
- 8. bir Tkinter GUI için Python
- 9. Python Tkinter atma Tcl hatası
- 10. AForge İçinde Dikdörtgen İçinde Daire Bulmak
- 11. Tkinter
- 12. Python multi-threading ile tkinter
- 13. Python Tkinter - Radiobutton'da seçim yapın
- 14. Python - TKinter "zaman aşımına uğradı"
- 15. Python tkinter - Metin gösterilemiyor (GUI)
- 16. Python Tkinter .config() yöntemini kullanma
- 17. Python Tkinter bir çerçeve temizleme
- 18. Bir UIImageView IOS biçiminde çizim Çizim
- 19. Tkinter
- 20. Parlaklık içinde dinamik çizim yüksekliği
- 21. Python Tkinter kaydırma çubuğu çerçeve için
- 22. Basit bir web sarıcı ile python tkinter
- 23. Python - Farklı renklerdeki çizim değerleri
- 24. Python Python 2.7 Tkinter kullanarak bir uygulama üzerinde çalışıyorum 2.7
- 25. svg içinde daire içindeki öğeleri bul
- 26. Tkinter
- 27. Python tkinter - tüm alt öğeleri nasıl silebilirim?
- 28. Python (tkinter) içine nasıl excel alırım
- 29. Beaglebone Üzerinde Python Tkinter Kullanımı: Ekran Titreme
- 30. Python tkinter Metin çerçevesi, sabit büyüklükteki çerçeveyi