0
0 комментариев

Здравствуйте. Начал изучать Python и Tkinter. Сейчас стоит задача сделать в форме небольшой холст, в котором я могу рисовать курсором и добавить две кнопки ОЧИСТИТЬ ХОЛСТ и СОХРАНИТЬ ИЗОБРАЖЕНИЕ. (пишу программу для распознавания цифр с помощью pycaffe)

Сейчас есть такой код : холст добавляется в левом верхнем углу и есть возможность рисования, но если пробую добавить button, то форма просто перестает открываться:

import Tkinter
from Tkinter import *
from PIL import Image,ImageDraw
import tkFileDialog
 
 
class Application(Tkinter.Frame):
    def __init__(self, master):
        Tkinter.Frame.__init__(self, master)
        self.grid()
        self.create_widgets()
 
    def create_widgets(self):
        self.canvas = Tkinter.Canvas(root, width=222, height=223)
        self.canvas.grid()
        self.canvas.bind('<B1-Motion>', self.draw)
 
 
    def draw(self, event):
        self.canvas.create_oval(event.x-10, event.y-10, event.x+10, event.y+10)
        self.canvas.create_oval(event.x-9, event.y-9, event.x+9, event.y+9)
        self.canvas.create_oval(event.x-8, event.y-8, event.x+8, event.y+8)
        self.canvas.create_oval(event.x-7, event.y-7, event.x+7, event.y+7)
        self.canvas.create_oval(event.x-6, event.y-6, event.x+6, event.y+6)
        self.canvas.create_oval(event.x-5, event.y-5, event.x+5, event.y+5)
        self.canvas.create_oval(event.x-4, event.y-4, event.x+4, event.y+4)
        self.canvas.create_oval(event.x-3, event.y-3, event.x+3, event.y+3)
        self.canvas.create_oval(event.x-2, event.y-2, event.x+2, event.y+2)
        self.canvas.create_oval(event.x-1, event.y-1, event.x+1, event.y+1)
        self.canvas.create_oval(event.x, event.y, event.x, event.y)
 
 
 
if __name__ == '__main__':
 root=Tk()
 root["bg"] = "grey"
 root.geometry('800x600+10+50')
 root.title("Digit Recognition")
 app = Application(root)
 label = Tkinter.Label(root, text="Digit", font= "Arial 25", bg="grey")
 label.place(relx=0.8, rely=0.1, anchor="center")
 
root.mainloop()

знатоки помогите пожалуйста. Как сделать чтобы и холст был и кнопки функционировали?


Добавить комментарий