Table of Contents Przykłady : Canvas w Tkinter Prosty przykład Dziedziczenie z Canvas Przykłady : Canvas w Tkinter Prosty przykład Kod źródłowy : canvas_simple.py <sxh python> from tkinter import * master = Tk() w = Canvas(master, width=200, height=100) w.pack() w.create_line(0, 0, 200, 100) w.create_line(0, 100, 200, 0, fill=“red”, dash=(4, 4)) w.create_rectangle(50, 25, 150, 75, fill=“blue”) mainloop() </sxh> Dziedziczenie z Canvas Kod źródłowy: canvas_dots.py <sxh python> from tkinter import * root = Tk() class MyCanvas(Canvas): def __init__(self,master,*args,**kwargs): self.r = kwargs.pop('radius', 5) super().__init__(master=master,*args,**kwargs) self.set_bindings() def set_bindings(self): self.bind("<Button-1>", self.draw_disc) self.bind("<Button-2>", self.make_red) def draw_disc(self, event): x1 = event.x - self.r y1 = event.y - self.r x2 = event.x + self.r y2 = event.y + self.r self.create_oval(x1,y1,x2,y2) def make_red(self, event): r = 5 x1 = event.x - r y1 = event.y - r x2 = event.x + r y2 = event.y + r items = self.find_overlapping(x1,y1,x2,y2) for i in items: self.itemconfig(i, fill="red") canvas=MyCanvas(root, width=500, height=500, radius=10) canvas.pack() root.mainloop() </sxh> pl/teaching/subjects/oop/lectures/gui2.txt Last modified: 2017/10/02 15:37(external edit)