日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

Python简易画图软件开发

發(fā)布時(shí)間:2023/12/31 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python简易画图软件开发 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

可以簡(jiǎn)單實(shí)現(xiàn)清屏、橡皮檫、矩形、直線、箭頭、畫(huà)筆以及顏色的選擇

"""開(kāi)發(fā)畫(huà)圖軟件""" from tkinter import * from tkinter.filedialog import * from tkinter.colorchooser import * from tkinter.filedialog import *# 窗口的寬度和高度 win_width = 900 win_height = 450class Application(Frame):def __init__(self, master=None, bgcolor="#000000"):super().__init__(master) # super()代表的是父類(lèi)的定義,而不是父類(lèi)對(duì)象self.master = masterself.bgcolor = bgcolorself.x = 0self.y = 0self.fgcolor = "#ff0000"self.lastDraw = 0 # 表示最后繪制的圖形的idself.startDrawFalg = Falseself.pack()self.createWidget()def createWidget(self):# 創(chuàng)建繪圖區(qū)域self.drawpad = Canvas(root, width=win_width, height=win_height * 0.9, bg=self.bgcolor)self.drawpad.pack()# 創(chuàng)建按鈕btn_start = Button(root, text="開(kāi)始", name="start")btn_start.pack(side="left", padx="10")btn_pen = Button(root, text="畫(huà)筆", name="pen")btn_pen.pack(side="left", padx="10")btn_rect = Button(root, text="矩形", name="rect")btn_rect.pack(side="left", padx="10")btn_clear = Button(root, text="清屏", name="clear")btn_clear.pack(side="left", padx="10")btn_erasor = Button(root, text="橡皮擦", name="erasor")btn_erasor.pack(side="left", padx="10")btn_line = Button(root, text="直線", name="line")btn_line.pack(side="left", padx="10")btn_lineArrow = Button(root, text="箭頭直線", name="lineArrow")btn_lineArrow.pack(side="left", padx="10")btn_color = Button(root, text="顏色", name="color")btn_color.pack(side="left", padx="10")# 事件處理btn_pen.bind_class("Button", "<1>", self.eventManager)self.drawpad.bind("<ButtonRelease-1>", self.stopDraw)# 增加顏色切換快捷鍵root.bind("<KeyPress-r>", self.kuaijiejian)root.bind("<KeyPress-g>", self.kuaijiejian)root.bind("<KeyPress-y>", self.kuaijiejian)def eventManager(self, event):name = event.widget.winfo_name()print(name)if name == "line":self.drawpad.bind("<B1-Motion>", self.myline)elif name == "lineArrow":self.drawpad.bind("<B1-Motion>", self.mylineArrow)elif name == "rect":self.drawpad.bind("<B1-Motion>", self.myRect)elif name == "pen":self.drawpad.bind("<B1-Motion>", self.myPen)elif name == "erasor":self.drawpad.bind("<B1-Motion>", self.myErasor)elif name == "clear":self.drawpad.delete("all")elif name == "color":c = askcolor(color=self.fgcolor, title="選擇畫(huà)筆顏色")# [(255,0,0),"#ff0000"]self.fgcolor = c[1]def stopDraw(self, event):self.startDrawFalg = Falseself.lastDraw = 0def startDraw(self, event):self.drawpad.delete(self.lastDraw)if not self.startDrawFalg:self.startDrawFalg = Trueself.x = event.xself.y = event.ydef myline(self, event):self.startDraw(event)self.lastDraw = self.drawpad.create_line(self.x, self.y, event.x, event.y, fill=self.fgcolor)def mylineArrow(self, event):self.startDraw(event)self.lastDraw = self.drawpad.create_line(self.x, self.y, event.x, event.y, arrow=LAST, fill=self.fgcolor)def myRect(self, event):self.startDraw(event)self.lastDraw = self.drawpad.create_rectangle(self.x, self.y, event.x, event.y, outline=self.fgcolor)def myPen(self, event):self.startDraw(event)self.drawpad.create_line(self.x, self.y, event.x, event.y, fill=self.fgcolor)self.x = event.xself.y = event.ydef myErasor(self, event):self.startDraw(event)self.drawpad.create_rectangle(event.x - 8, event.y - 8, event.x + 8, event.y + 8, fill=self.bgcolor)self.x = event.xself.y = event.ydef kuaijiejian(self, event):if event.char == "r":self.fgcolor = "#ff0000"elif event.char == "g":self.fgcolor = "#00ff00"elif event.char == "y":self.fgcolor = "#ffff00"if __name__ == '__main__':root = Tk()root.geometry(str(win_width) + "x" + str(win_height) + "+200+300")root.title("畫(huà)圖軟件")app = Application(master=root)root.mainloop()

?

總結(jié)

以上是生活随笔為你收集整理的Python简易画图软件开发的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。