PyQT5之QPushButton和布局
1.PyQT5图像2.PyQT5水平垂直布局3.PyQT5之图片左右翻页
4.PyQT5之QPushButton和布局
5.PyQT5之label6.PyQT5之选择图片7.PyQT5之自定义信号8.PyQT5之窗口9.PyQT5之菜单栏和工具栏10.PyQT5之QComboBox11.PyQT5之Checkbox12.PyQT5之QRadioButton13.PyQT5之单行文本输入到多行显示窗14.PyQT5之网格布局多图片显示15.PyQtGraph绘制折线图16.PyQT5之PyQtGraph实时数据显示17.PyQT5之窗口最大化最小化18.PyQT5之QSS基础/子控件选择器19.PyQT5样式设置20.PyQT5绘图21.PyQT5窗口样式设置22.PyQT5之设置窗口控件风格23.PyQT5之多窗口交互24.PyQT5之override覆盖槽函数25.PyQT5之为槽函数传递参数26.PyQT5信号与槽的连接27.PyQT5信号刷新时间28.PyQT5之信号关闭窗口29.信号与槽N对N30.PyQT5之多个信号31.PyQT5之QTreeView32.PyQT5内嵌html33.PyQT5加载本地web页面34.PyQT5之QWebEngineView35.PyQT5之QThread36.PyQT5之QTimer37.PyQT5之QStackedWidget38.PyQT5之QTreeWidget-QTabWidget39.PyQT5之QTableWidget40.PyQT5之QListWidget41.PyQT5之QListView42.PyQT5之二维表QTableView43.PyQT5打印机44.PyQT5之QPainter45.PyQT5之QFontDialog46.PyQT5之QInputDialog47.PyQT5之QMessageBox48.PyQT5之QDialog49.PyQT5之多页面切换50.PyQT5之计数器控件QSpinBox51.PyQT5之滑块控件QSlider52.PyQtGraph绘图参考53.PyQtGraph之多图绘制54.PyQtGraph之柱状图55.PyQt5选择文件控件QFileDialog
from PyQt5 import QtWidgets
from PyQt5 import QtCore, QtGui
import sys
import cv2
def click_btn1():
print("click button 1")
txt_label.setText("我是按钮1点击之后")
def click_btn2():
print("click button 2")
def click_btn3():
print("click button 3")
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
main_win = QtWidgets.QMainWindow()
main_win.setWindowTitle("按钮组件 演示")
btn1 = QtWidgets.QPushButton("按钮1")
btn2 = QtWidgets.QPushButton("按钮2")
btn3 = QtWidgets.QPushButton("按钮3")
btn1.clicked.connect(click_btn1)
btn2.clicked.connect(click_btn2)
btn3.clicked.connect(click_btn3)
image_label = QtWidgets.QLabel()
txt_label = QtWidgets.QLabel()
# 方法一:使用QtGui直接显示
# pixmap = QtGui.QPixmap("./image/img1.png")
# pix = pixmap.scaled(QtCore.QSize(640, 640), QtCore.Qt.KeepAspectRatio) # 自动保持比例放缩方式
# 方法二:使用cv2显示
src = cv2.imread("./image/img1.png") # BGR
image = cv2.cvtColor(src, cv2.COLOR_BGR2RGB) # 将BGR转为RGB
h, w, c = image.shape
img = QtGui.QImage(image.data, w, h, 3*w, QtGui.QImage.Format_RGB888)
pixmap = QtGui.QPixmap(img)
pix = pixmap.scaled(QtCore.QSize(640, 640), QtCore.Qt.KeepAspectRatio) # 自动保持比例放缩方式
image_label.setPixmap(pix) # 设置图像显示
image_label.setAlignment(QtCore.Qt.AlignCenter) # label上的内容居中显示
image_label.setStyleSheet("background-color:blue;color:green") # 背景颜色设置
# main_win.setCentralWidget(image_label)
txt_label.setText("Hello, PyQT5")
txt_label.setAlignment(QtCore.Qt.AlignCenter) # label上居中显示
txt_label.setStyleSheet("background-color:pink;color:green") # 背景颜色设置
font = QtGui.QFont()
font.setBold(True)
font.setPointSizeF(32)
txt_label.setFont(font)
label3 = QtWidgets.QLabel()
label3.setText("你好, OpenCV")
label3.setStyleSheet("background-color:gray;color:red") # 背景颜色设置
panel2 = QtWidgets.QWidget()
hvoxlayout = QtWidgets.QVBoxLayout()
hvoxlayout.addWidget(txt_label)
hvoxlayout.addWidget(label3)
panel2.setLayout(hvoxlayout)
btn_panel = QtWidgets.QWidget()
btn_layout = QtWidgets.QHBoxLayout()
btn_layout.addWidget(btn1)
btn_layout.addWidget(btn2)
btn_layout.addWidget(btn3)
btn_panel.setLayout(btn_layout)
panel1 = QtWidgets.QWidget()
hhoxlayout = QtWidgets.QHBoxLayout()
hhoxlayout.addWidget(panel2)
hhoxlayout.addWidget(image_label)
hhoxlayout.addWidget(btn_panel)
panel1.setLayout(hhoxlayout)
main_win.setCentralWidget(panel1)
main_win.setMinimumSize(1080, 720)
main_win.show()
app.exec_()
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验