Ubuntu下QT5美化QPushButton教程与图标应用示例

版权申诉
0 下载量 37 浏览量 更新于2024-11-05 收藏 36KB GZ 举报
资源摘要信息:"add_button_icon.tar.gz_QPushbutton_QT5_icon" 知识点: 1. Ubuntu操作系统: Ubuntu是一种流行的Linux操作系统发行版,它拥有用户友好的界面和强大的社区支持。在Ubuntu环境下,用户可以轻松地安装和使用各种软件和开发工具。 2. QT5框架: QT是一个跨平台的C++应用程序开发框架,它包含用于开发图形用户界面组件的库。QT5是该框架的最新主要版本,它提供了更多的特性和改进,包括对移动和嵌入式平台的支持。 3. QPushButton类: QPushButton是QT5中的一个组件类,用于创建可点击的按钮。它可以被用来响应用户点击事件,并执行相应的动作。 4. 美化QPushButton: 美化QPushButton通常涉及到改变按钮的样式和外观,例如修改按钮的背景颜色,或者在按钮上加载图片。在QT5中,可以通过修改按钮的样式表(stylesheet)或者使用CSS属性来实现按钮的美化。 5. 加载图片: 在QPushButton上加载图片,可以使按钮具有更直观的视觉效果。在QT5中,可以使用QPixmap类来加载和显示图片。 6. 修改样式: 修改QPushButton的样式通常涉及到使用QT5的样式表(stylesheet)功能。样式表是一种类似于CSS的语法,它允许开发者定义控件的外观和布局。 7. 改变背景颜色: 在QPushButton中,可以通过设置背景颜色来改变按钮的外观。在QT5中,这可以通过样式表来实现,使用background-color属性来设置颜色。 8. 窗口widgets简单程序: 在QT5中,窗口widgets是指窗口中的各种控件。一个简单的程序可能涉及到创建一个窗口,并在其中添加和配置各种控件,例如QPushButton。这样的程序通常用于演示如何使用QT5框架创建一个基本的图形用户界面。 9. 文件打包与压缩: 压缩文件是将多个文件或文件夹打包成一个文件,并使用压缩算法减小文件大小。在本例中,文件名"add_button_icon.tar.gz"表明这是一个使用gzip压缩算法压缩的tar归档文件。tar是一种在Unix和类Unix系统中广泛使用的打包工具,它可以将多个文件和文件夹组合成一个文件。而gzip是一种数据压缩程序,它可以进一步压缩tar归档文件,以减小其大小并提高传输效率。 通过上述知识点,我们可以了解到本文件可能包含了一个在Ubuntu系统下,使用QT5框架创建的示例程序。该程序展示了如何美化一个QPushButton,包括在按钮上加载图片、修改样式和改变背景颜色。这个示例程序可以作为学习和理解QT5框架中按钮组件特性的实践案例。同时,该文件是经过压缩打包的tar.gz格式,这有助于文件的存储和传输。
2023-05-28 上传

import FreeCAD import FreeCADGui from PySide import QtGui, QtCore Gui.activateWorkbench("PartWorkbench") FreeCAD.newDocument() class SphereDialog(QtGui.QDialog): def __init__(self): super().__init__() self.setWindowTitle("Create Sphere") self.create_widgets() def create_widgets(self): layout = QtGui.QVBoxLayout() # Radius widget radius_label = QtGui.QLabel("Radius:") self.radius_spinbox = QtGui.QDoubleSpinBox() self.radius_spinbox.setMinimum(0.1) self.radius_spinbox.setMaximum(1000.0) self.radius_spinbox.setValue(10.0) layout.addWidget(radius_label) layout.addWidget(self.radius_spinbox) # Opacity widget opacity_label = QtGui.QLabel("Opacity:") self.opacity_slider = QtGui.QSlider(QtCore.Qt.Horizontal) self.opacity_slider.setMinimum(0) self.opacity_slider.setMaximum(100) self.opacity_slider.setValue(50) layout.addWidget(opacity_label) layout.addWidget(self.opacity_slider) # Create button create_button = QtGui.QPushButton("Create") create_button.clicked.connect(self.create_sphere) layout.addWidget(create_button) self.setLayout(layout) def create_sphere(self): # Get sphere parameters radius = self.radius_spinbox.value() opacity = float(self.opacity_slider.value() / 100) # Create sphere sphere = FreeCAD.ActiveDocument.addObject("Part::Sphere", "Sphere") sphere.Radius = radius sphere.ViewObject.Transparency = int(round(opacity * 100)) # Show in 3D view sphere.ViewObject.Visibility = True FreeCADGui.SendMsgToActiveView("ViewFit") FreeCADGui.Selection.clearSelection() FreeCADGui.Selection.addSelection(sphere) FreeCADGui.SendMsgToActiveView("ViewFit") # Close dialog self.close() dialog = SphereDialog() dialog.show()代码中执行没有球体出现,请修改代码

2023-05-30 上传

# 打开图片按钮 self.pushButton_img = QtWidgets.QPushButton(self.centralwidget) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.MinimumExpanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.pushButton_img.sizePolicy().hasHeightForWidth()) self.pushButton_img.setSizePolicy(sizePolicy) self.pushButton_img.setMinimumSize(QtCore.QSize(150, 40)) self.pushButton_img.setMaximumSize(QtCore.QSize(150, 40)) font = QtGui.QFont() font.setFamily("Agency FB") font.setPointSize(12) self.pushButton_img.setFont(font) self.pushButton_img.setObjectName("pushButton_img") self.verticalLayout.addWidget(self.pushButton_img, 0, QtCore.Qt.AlignHCenter) self.verticalLayout.addStretch(5) # 增加垂直盒子内部对象间距 # 打开摄像头按钮 self.pushButton_camera = QtWidgets.QPushButton(self.centralwidget) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.pushButton_camera.sizePolicy().hasHeightForWidth()) self.pushButton_camera.setSizePolicy(sizePolicy) self.pushButton_camera.setMinimumSize(QtCore.QSize(150, 40)) self.pushButton_camera.setMaximumSize(QtCore.QSize(150, 40)) self.pushButton_camera.setFont(font) self.pushButton_camera.setObjectName("pushButton_camera") self.verticalLayout.addWidget(self.pushButton_camera, 0, QtCore.Qt.AlignHCenter) self.verticalLayout.addStretch(5)

2023-07-15 上传

self.label.setPalette(palette) self.label.setStyleSheet("QLabel{\n" " \n" " border:1px solid #717171;\n" "background-color: rgb(0, 0, 0);\n" "\n" "}\n" "") self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setObjectName("label") self.label_2 = QtWidgets.QLabel(Form) self.label_2.setGeometry(QtCore.QRect(30, 390, 421, 111)) font = QtGui.QFont() font.setPointSize(30) self.label_2.setFont(font) self.label_2.setStyleSheet("QLabel{\n" " \n" " border:1px solid #717171;\n" "\n" "}\n" "") self.label_2.setText("") self.label_2.setAlignment(QtCore.Qt.AlignCenter) self.label_2.setObjectName("label_2") self.label_3 = QtWidgets.QLabel(Form) self.label_3.setGeometry(QtCore.QRect(510, 10, 421, 111)) self.label_3.setStyleSheet("QLabel{\n" " \n" " border:1px solid #717171;\n" "background-color: rgb(0, 0, 0);\n" "\n" "}\n" "") self.label_3.setAlignment(QtCore.Qt.AlignCenter) self.label_3.setObjectName("label_3") self.label_4 = QtWidgets.QLabel(Form) self.label_4.setGeometry(QtCore.QRect(170, 520, 141, 31)) font = QtGui.QFont() font.setPointSize(19) self.label_4.setFont(font) self.label_4.setAlignment(QtCore.Qt.AlignCenter) self.label_4.setObjectName("label_4") self.label_5 = QtWidgets.QLabel(Form) self.label_5.setGeometry(QtCore.QRect(510, 170, 421, 111)) self.label_5.setStyleSheet("QLabel{\n" " \n" " border:1px solid #717171;\n" "background-color: rgb(0, 0, 0);\n" "\n" "}\n" "") self.label_5.setAlignment(QtCore.Qt.AlignCenter) self.label_5.setObjectName("label_5") self.verticalLayoutWidget = QtWidgets.QWidget(Form) self.verticalLayoutWidget.setGeometry(QtCore.QRect(710, 370, 231, 151)) self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget) self.verticalLayout.setContentsMargins(0, 0, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.PB1 = QtWidgets.QPushButton(self.verticalLayoutWidget) self.PB1.setObjectName("PB1") self.verticalLayout.addWidget(self.PB1) self.PB2 = QtWidgets.QPushButton(self.verticalLayoutWidget) self.PB2.setObjectName("PB2") self.verticalLayout.addWidget(self.PB2) self.PB4 = QtWidgets.QPushButton(self.verticalLayoutWidget) self.PB4.setObjectName("PB4") self.verticalLayout.addWidget(self.PB4)

2023-05-31 上传