python按钮如何连接到绘画图窗

python按钮如何连接到绘画图窗,第1张

第一,启动Python自带的集中开发环境IDLE,然后点击File-->New File,并在脚本框中输入如下代码,用于创建窗口和按钮。

from tkinter import *  # 从tkinter库中导入所有函数

window1=Tk()  # 创建一个窗口

window1.title('test1')  # 设置窗口标题

window1.geometry('500x500+100+100')  # 设置窗口大小x和左顶距离+

def Jason():  # 创建一个函数

 print('Come on,baby')

button1=Button(window1,text='点我啊',command=Jason)  # 设置按钮属性

button1.pack()  # 设置显示按钮

window1.mainloop()  # 设置窗口循环显示

Python创建窗口按钮和绘制画布直线

第二,保存和运行上述脚本,得到如下窗口和窗口中的按钮“点我啊”。

Python创建窗口按钮和绘制画布直线

第三,点击“点我啊”按钮,会在IDLE中显示“Come on, baby”.

Python创建窗口按钮和绘制画布直线

第四,在IDLE中再次点击File-->New File,并在脚本中输入如下代码,用于创建窗口画布和在画布上绘制直线。

from tkinter import *

window1=Tk()

window1.title('test2')

canvas1=Canvas(window1,width=500,height=500,bg='pink')  # 设置画布

canvas1.pack()  # 显示画布

# 利用create_line()在画布上绘制直线

canvas1.create_line(100,100,400,100,width=5,fill='red')

canvas1.create_line(100,200,400,200,width=15,fill='green')

canvas1.create_line(100,300,400,300,width=35,fill='blue')

window1.mainloop()

Python创建窗口按钮和绘制画布直线

第五,保存和运行上述脚本,可以得到如下图形,画布中绘制了“红 绿 蓝”三条线。

Python创建窗口按钮和绘制画布直线

弄了一下午的qt,到现在总算出来效果了,下面的代码,添加了个滑动条,拖拽可以实现窗体透明效果,button自然就更不在话下了,由于对qt不熟悉(答案基本是doc + google出来的),所以细节不好说,呵呵,事件是connect加上的,而要加控件,需要加一个布局吧。

from PyQt4 import QtCore, QtGui

from PyQt4.QtGui import *

from PyQt4.QtCore import *

class MyForm(QWidget):

def __init__(self, parent=None):

super(MyForm,self).__init__(parent)

self.pix = QPixmap("mac.png")

self.resize(self.pix.size())

self.setMask(self.pix.mask())

slider = QSlider(Qt.Horizontal, self)

slider.valueChanged.connect(self.setAlpha)

layout = QVBoxLayout()

layout.addWidget(slider)

self.setLayout(layout)

def setAlpha(self, value):

self.setWindowOpacity((100 - value)/100)

def paintEvent(self,event):

painter = QPainter(self)

painter.drawPixmap(0,0,self.pix.width(),self.pix.height(),self.pix)

app = QApplication([])

form = MyForm()

form.show()

app.exec_()

Python的tk.messagebox可以通过设置参数type来添加按钮,可以使用type参数中提供的“abortretryignore”、“okcancel”等不同的值来设置按钮,从而向用户提供多种选择。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11962726.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存