繁体   English   中英

如何通过按钮将参数从GUI PyQt5小部件传递给我正在使用的python代码

[英]How do I pass parameters from the GUI PyQt5 widgets to the python code I have working through a button

这是我正在做的工作,以加快使用我们使用的软件的过程。 我正在尝试通过使用其他正则表达式搜索和替换功能来更改文本文件。 我已经在工作,并且以自己想要的方式拥有了GUI。

import MainCode
from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.setEnabled(True)
        MainWindow.resize(786, 73)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
        MainWindow.setSizePolicy(sizePolicy)
        MainWindow.setMinimumSize(QtCore.QSize(786, 73))
        MainWindow.setWindowOpacity(1.0)
        MainWindow.setDockNestingEnabled(True)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.StyleGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.StyleGroupBox.setGeometry(QtCore.QRect(0, 10, 101, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.StyleGroupBox.setFont(font)
        self.StyleGroupBox.setFocusPolicy(QtCore.Qt.NoFocus)
        self.StyleGroupBox.setCheckable(True)
        self.StyleGroupBox.setChecked(False)
        self.StyleGroupBox.setObjectName("StyleGroupBox")
        self.StyleComboBox = QtWidgets.QComboBox(self.StyleGroupBox)
        self.StyleComboBox.setGeometry(QtCore.QRect(10, 20, 81, 31))
        self.StyleComboBox.setMinimumSize(QtCore.QSize(69, 0))
        self.StyleComboBox.setSizeIncrement(QtCore.QSize(5, 5))
        self.StyleComboBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.StyleComboBox.setMaxCount(100)
  self.StyleComboBox.setSizeAdjustPolicy(QtWidgets.QComboBox.AdjustToContentsOnFirstShow)
        self.StyleComboBox.setMinimumContentsLength(1)
        self.StyleComboBox.setDuplicatesEnabled(True)
        self.StyleComboBox.setObjectName("StyleComboBox")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.FontGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.FontGroupBox.setEnabled(True)
        self.FontGroupBox.setGeometry(QtCore.QRect(100, 10, 81, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.FontGroupBox.setFont(font)
        self.FontGroupBox.setFocusPolicy(QtCore.Qt.NoFocus)
        self.FontGroupBox.setCheckable(True)
        self.FontGroupBox.setChecked(False)
        self.FontGroupBox.setObjectName("FontGroupBox")
        self.FontSpinBox = QtWidgets.QSpinBox(self.FontGroupBox)
        self.FontSpinBox.setGeometry(QtCore.QRect(10, 20, 61, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.FontSpinBox.setFont(font)
        self.FontSpinBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.FontSpinBox.setMinimum(8)
        self.FontSpinBox.setMaximum(200)
        self.FontSpinBox.setProperty("value", 24)
        self.FontSpinBox.setObjectName("FontSpinBox")
        self.OpacityGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.OpacityGroupBox.setEnabled(True)
        self.OpacityGroupBox.setGeometry(QtCore.QRect(180, 10, 81, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.OpacityGroupBox.setFont(font)
        self.OpacityGroupBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.OpacityGroupBox.setCheckable(True)
        self.OpacityGroupBox.setChecked(False)
        self.OpacityGroupBox.setObjectName("OpacityGroupBox")
        self.OpacityDoubleSpinBox = QtWidgets.QDoubleSpinBox(self.OpacityGroupBox)
        self.OpacityDoubleSpinBox.setGeometry(QtCore.QRect(10, 20, 61, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.OpacityDoubleSpinBox.setFont(font)
        self.OpacityDoubleSpinBox.setToolTip("")
        self.OpacityDoubleSpinBox.setDecimals(2)
        self.OpacityDoubleSpinBox.setMaximum(1.0)
        self.OpacityDoubleSpinBox.setSingleStep(0.01)
        self.OpacityDoubleSpinBox.setProperty("value", 1.0)
        self.OpacityDoubleSpinBox.setObjectName("OpacityDoubleSpinBox")
        self.NextPageGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.NextPageGroupBox.setEnabled(True)
        self.NextPageGroupBox.setGeometry(QtCore.QRect(260, 10, 91, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.NextPageGroupBox.setFont(font)
        self.NextPageGroupBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.NextPageGroupBox.setCheckable(True)
        self.NextPageGroupBox.setChecked(False)
        self.NextPageGroupBox.setObjectName("NextPageGroupBox")
        self.NextPageSpinBox = QtWidgets.QSpinBox(self.NextPageGroupBox)
        self.NextPageSpinBox.setGeometry(QtCore.QRect(10, 20, 81, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.NextPageSpinBox.setFont(font)
        self.NextPageSpinBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.NextPageSpinBox.setInputMethodHints(QtCore.Qt.ImhDigitsOnly)
        self.NextPageSpinBox.setButtonSymbols(QtWidgets.QAbstractSpinBox.PlusMinus)
        self.NextPageSpinBox.setAccelerated(True)
        self.NextPageSpinBox.setMaximum(999999999)
        self.NextPageSpinBox.setDisplayIntegerBase(10)
        self.NextPageSpinBox.setObjectName("NextPageSpinBox")
        self.ZindexGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.ZindexGroupBox.setEnabled(True)
        self.ZindexGroupBox.setGeometry(QtCore.QRect(350, 10, 71, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.ZindexGroupBox.setFont(font)
        self.ZindexGroupBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.ZindexGroupBox.setCheckable(True)
        self.ZindexGroupBox.setChecked(False)
        self.ZindexGroupBox.setObjectName("ZindexGroupBox")
        self.ZindexSpinBox = QtWidgets.QSpinBox(self.ZindexGroupBox)
        self.ZindexSpinBox.setGeometry(QtCore.QRect(10, 20, 51, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.ZindexSpinBox.setFont(font)
        self.ZindexSpinBox.setObjectName("ZindexSpinBox")
        self.AddChangeFrame = QtWidgets.QFrame(self.centralwidget)
        self.AddChangeFrame.setEnabled(True)
        self.AddChangeFrame.setGeometry(QtCore.QRect(420, 0, 351, 71))
        font = QtGui.QFont()
        font.setPointSize(8)
        self.AddChangeFrame.setFont(font)
        self.AddChangeFrame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.AddChangeFrame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.AddChangeFrame.setObjectName("AddChangeFrame")
        self.NewButtonsSpinBox = QtWidgets.QSpinBox(self.AddChangeFrame)
        self.NewButtonsSpinBox.setGeometry(QtCore.QRect(10, 20, 41, 31))
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(False)
        font.setWeight(50)
        self.NewButtonsSpinBox.setFont(font)
        self.NewButtonsSpinBox.setMouseTracking(True)
        self.NewButtonsSpinBox.setAlignment(QtCore.Qt.AlignCenter)
        self.NewButtonsSpinBox.setMinimum(1)
        self.NewButtonsSpinBox.setObjectName("NewButtonsSpinBox")
        self.NewButtonsRadio = QtWidgets.QRadioButton(self.AddChangeFrame)
        self.NewButtonsRadio.setGeometry(QtCore.QRect(0, 0, 161, 21))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.NewButtonsRadio.setFont(font)
        self.NewButtonsRadio.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.NewButtonsRadio.setObjectName("NewButtonsRadio")
        self.StartItemLabel = QtWidgets.QLabel(self.AddChangeFrame)
        self.StartItemLabel.setGeometry(QtCore.QRect(70, 20, 61, 21))
        self.StartItemLabel.setObjectName("StartItemLabel")
        self.EndingItemLabel = QtWidgets.QLabel(self.AddChangeFrame)
        self.EndingItemLabel.setGeometry(QtCore.QRect(160, 20, 51, 20))
        self.EndingItemLabel.setObjectName("EndingItemLabel")
        self.StartItemNumberSpinBox = QtWidgets.QSpinBox(self.AddChangeFrame)
        self.StartItemNumberSpinBox.setGeometry(QtCore.QRect(60, 40, 81, 22))
        self.StartItemNumberSpinBox.setObjectName("StartItemNumberSpinBox")
        self.EndItemNumberSpinBox = QtWidgets.QSpinBox(self.AddChangeFrame)
        self.EndItemNumberSpinBox.setGeometry(QtCore.QRect(150, 40, 81, 22))
        self.EndItemNumberSpinBox.setObjectName("EndItemNumberSpinBox")
        self.ChangeRadioButton = QtWidgets.QRadioButton(self.AddChangeFrame)
        self.ChangeRadioButton.setGeometry(QtCore.QRect(170, 0, 181, 21))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.ChangeRadioButton.setFont(font)
        self.ChangeRadioButton.setChecked(True)
        self.ChangeRadioButton.setObjectName("ChangeRadioButton")
        self.SubmitChangesButton = QtWidgets.QPushButton(self.centralwidget)
        self.SubmitChangesButton.setGeometry(QtCore.QRect(660, 30, 131, 41))
        font = QtGui.QFont()
        font.setFamily("Segoe UI")
        font.setPointSize(11)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        font.setKerning(True)
        self.SubmitChangesButton.setFont(font)
      self.SubmitChangesButton.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor))
        self.SubmitChangesButton.setAutoFillBackground(True)
        self.SubmitChangesButton.setObjectName("SubmitChangesButton")
        MainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Simphony Button Editor"))
        self.StyleGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the style &amp; color of the button using the drop-down menu.</p></body></html>"))
        self.StyleGroupBox.setWhatsThis(_translate("MainWindow", "<html><head/><body><p>Changes style &amp; color of button</p></body></html>"))
        self.StyleGroupBox.setTitle(_translate("MainWindow", "Color/ Style"))
        self.StyleComboBox.setItemText(0, _translate("MainWindow", "Button1"))
        self.StyleComboBox.setItemText(1, _translate("MainWindow", "Button2"))
        self.StyleComboBox.setItemText(2, _translate("MainWindow", "Button3"))
        self.StyleComboBox.setItemText(3, _translate("MainWindow", "Button4"))
        self.StyleComboBox.setItemText(4, _translate("MainWindow", "Button5"))
        self.FontGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the font size the button text.</p></body></html>"))
        self.FontGroupBox.setTitle(_translate("MainWindow", "Font Size"))
        self.OpacityGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the percentage Opacity (visibility) of the button.</p></body></html>"))
        self.OpacityGroupBox.setTitle(_translate("MainWindow", "Opacity"))
        self.NextPageGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Assigns the next menu page to jump to after button completion. </p></body></html>"))
        self.NextPageGroupBox.setTitle(_translate("MainWindow", "Next Page"))
        self.ZindexGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the visibility layer of the button. If a button is set to 1 and another set to 2 in the same spot then you would only see the button with Z index 2.</p></body></html>"))
        self.ZindexGroupBox.setTitle(_translate("MainWindow", "Z Index"))
        self.NewButtonsRadio.setText(_translate("MainWindow", "Create New Buttons"))
        self.StartItemLabel.setText(_translate("MainWindow", "Start Item#"))
        self.EndingItemLabel.setText(_translate("MainWindow", "End Item#"))
        self.StartItemNumberSpinBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Enter Item number. Items must be in sequintial order if adding multiple buttons.</p></body></html>"))
        self.EndItemNumberSpinBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Items must be in sequintial order if adding multiple buttons.</p></body></html>"))
        self.ChangeRadioButton.setText(_translate("MainWindow", "Update Copied Buttons"))
        self.SubmitChangesButton.setText(_translate("MainWindow", "Make Changes"))

class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.setupUi(self)
        self.SubmitChangesButton.clicked.connect(self.on_clicked)

    @QtCore.pyqtSlot()
    def on_clicked(self):
        if self.FontGroupBox.isChecked() is True:
            print('Font Size = ' + self.FontSpinBox.value())
        if self.StyleGroupBox.isChecked() is True:
            print(self.StyleComboBox.Text())           
        if self.OpacityGroupBox.isChecked() is True:
            print('Opacity% = ' + self.OpacityDoubleSpinBox.value())
        if self.NextPageGroupBox.isChecked() is True:
            print('Next Page = ' + self.NextPageSpinBox.value())
        if self.ZindexGroupBox.isChecked() is True:
            print('Z Index = ' + self.ZindexSpinBox.value())

if __name__ == "__main__":
    import sys
    import MainCode
    import MyDesign

    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindo`enter code here`w()
    ui.setupUi(MainWindow)
    MainWindow.show()
    print(Ui_MainWindow)
    sys.exit(app.exec_())

如果单击提交按钮时启用(选中)框架,则只需要能够从输入的输入中提取结果。 复选框,单选按钮和整数的输出应为true或false,其余部分为双精度和字符串。 我确定我缺少一些简单的东西。

我们为顶层窗口创建了一个class MainWindow 创建它的一个实例,然后在屏幕上显示小部件。

w = MainWindow()  
w.show() 

添加了在QComboBox下拉列表中获取所选项目的功能。

更正了on_clicked方法中的输出格式。

#import MainCode
from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.setEnabled(True)
        MainWindow.resize(786, 73)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
        MainWindow.setSizePolicy(sizePolicy)
        MainWindow.setMinimumSize(QtCore.QSize(786, 73))
        MainWindow.setWindowOpacity(1.0)
        MainWindow.setDockNestingEnabled(True)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.StyleGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.StyleGroupBox.setGeometry(QtCore.QRect(0, 10, 101, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.StyleGroupBox.setFont(font)
        self.StyleGroupBox.setFocusPolicy(QtCore.Qt.NoFocus)
        self.StyleGroupBox.setCheckable(True)
        self.StyleGroupBox.setChecked(False)
        self.StyleGroupBox.setObjectName("StyleGroupBox")
        self.StyleComboBox = QtWidgets.QComboBox(self.StyleGroupBox)
        self.StyleComboBox.setGeometry(QtCore.QRect(10, 20, 81, 31))
        self.StyleComboBox.setMinimumSize(QtCore.QSize(69, 0))
        self.StyleComboBox.setSizeIncrement(QtCore.QSize(5, 5))
        self.StyleComboBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.StyleComboBox.setMaxCount(100)
        self.StyleComboBox.setSizeAdjustPolicy(QtWidgets.QComboBox.AdjustToContentsOnFirstShow)
        self.StyleComboBox.setMinimumContentsLength(1)
        self.StyleComboBox.setDuplicatesEnabled(True)
        self.StyleComboBox.setObjectName("StyleComboBox")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.StyleComboBox.addItem("")
        self.FontGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.FontGroupBox.setEnabled(True)
        self.FontGroupBox.setGeometry(QtCore.QRect(100, 10, 81, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.FontGroupBox.setFont(font)
        self.FontGroupBox.setFocusPolicy(QtCore.Qt.NoFocus)
        self.FontGroupBox.setCheckable(True)
        self.FontGroupBox.setChecked(False)
        self.FontGroupBox.setObjectName("FontGroupBox")
        self.FontSpinBox = QtWidgets.QSpinBox(self.FontGroupBox)
        self.FontSpinBox.setGeometry(QtCore.QRect(10, 20, 61, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.FontSpinBox.setFont(font)
        self.FontSpinBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.FontSpinBox.setMinimum(8)
        self.FontSpinBox.setMaximum(200)
        self.FontSpinBox.setProperty("value", 24)
        self.FontSpinBox.setObjectName("FontSpinBox")
        self.OpacityGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.OpacityGroupBox.setEnabled(True)
        self.OpacityGroupBox.setGeometry(QtCore.QRect(180, 10, 81, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.OpacityGroupBox.setFont(font)
        self.OpacityGroupBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.OpacityGroupBox.setCheckable(True)
        self.OpacityGroupBox.setChecked(False)
        self.OpacityGroupBox.setObjectName("OpacityGroupBox")
        self.OpacityDoubleSpinBox = QtWidgets.QDoubleSpinBox(self.OpacityGroupBox)
        self.OpacityDoubleSpinBox.setGeometry(QtCore.QRect(10, 20, 61, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.OpacityDoubleSpinBox.setFont(font)
        self.OpacityDoubleSpinBox.setToolTip("")
        self.OpacityDoubleSpinBox.setDecimals(2)
        self.OpacityDoubleSpinBox.setMaximum(1.0)
        self.OpacityDoubleSpinBox.setSingleStep(0.01)
        self.OpacityDoubleSpinBox.setProperty("value", 1.0)
        self.OpacityDoubleSpinBox.setObjectName("OpacityDoubleSpinBox")
        self.NextPageGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.NextPageGroupBox.setEnabled(True)
        self.NextPageGroupBox.setGeometry(QtCore.QRect(260, 10, 91, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.NextPageGroupBox.setFont(font)
        self.NextPageGroupBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.NextPageGroupBox.setCheckable(True)
        self.NextPageGroupBox.setChecked(False)
        self.NextPageGroupBox.setObjectName("NextPageGroupBox")
        self.NextPageSpinBox = QtWidgets.QSpinBox(self.NextPageGroupBox)
        self.NextPageSpinBox.setGeometry(QtCore.QRect(10, 20, 81, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.NextPageSpinBox.setFont(font)
        self.NextPageSpinBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.NextPageSpinBox.setInputMethodHints(QtCore.Qt.ImhDigitsOnly)
        self.NextPageSpinBox.setButtonSymbols(QtWidgets.QAbstractSpinBox.PlusMinus)
        self.NextPageSpinBox.setAccelerated(True)
        self.NextPageSpinBox.setMaximum(999999999)
        self.NextPageSpinBox.setDisplayIntegerBase(10)
        self.NextPageSpinBox.setObjectName("NextPageSpinBox")
        self.ZindexGroupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.ZindexGroupBox.setEnabled(True)
        self.ZindexGroupBox.setGeometry(QtCore.QRect(350, 10, 71, 51))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.ZindexGroupBox.setFont(font)
        self.ZindexGroupBox.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.ZindexGroupBox.setCheckable(True)
        self.ZindexGroupBox.setChecked(False)
        self.ZindexGroupBox.setObjectName("ZindexGroupBox")
        self.ZindexSpinBox = QtWidgets.QSpinBox(self.ZindexGroupBox)
        self.ZindexSpinBox.setGeometry(QtCore.QRect(10, 20, 51, 31))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.ZindexSpinBox.setFont(font)
        self.ZindexSpinBox.setObjectName("ZindexSpinBox")
        self.AddChangeFrame = QtWidgets.QFrame(self.centralwidget)
        self.AddChangeFrame.setEnabled(True)
        self.AddChangeFrame.setGeometry(QtCore.QRect(420, 0, 351, 71))
        font = QtGui.QFont()
        font.setPointSize(8)
        self.AddChangeFrame.setFont(font)
        self.AddChangeFrame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.AddChangeFrame.setFrameShadow(QtWidgets.QFrame.Raised)
        self.AddChangeFrame.setObjectName("AddChangeFrame")
        self.NewButtonsSpinBox = QtWidgets.QSpinBox(self.AddChangeFrame)
        self.NewButtonsSpinBox.setGeometry(QtCore.QRect(10, 20, 41, 31))
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(False)
        font.setWeight(50)
        self.NewButtonsSpinBox.setFont(font)
        self.NewButtonsSpinBox.setMouseTracking(True)
        self.NewButtonsSpinBox.setAlignment(QtCore.Qt.AlignCenter)
        self.NewButtonsSpinBox.setMinimum(1)
        self.NewButtonsSpinBox.setObjectName("NewButtonsSpinBox")
        self.NewButtonsRadio = QtWidgets.QRadioButton(self.AddChangeFrame)
        self.NewButtonsRadio.setGeometry(QtCore.QRect(0, 0, 161, 21))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.NewButtonsRadio.setFont(font)
        self.NewButtonsRadio.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.NewButtonsRadio.setObjectName("NewButtonsRadio")
        self.StartItemLabel = QtWidgets.QLabel(self.AddChangeFrame)
        self.StartItemLabel.setGeometry(QtCore.QRect(70, 20, 61, 21))
        self.StartItemLabel.setObjectName("StartItemLabel")
        self.EndingItemLabel = QtWidgets.QLabel(self.AddChangeFrame)
        self.EndingItemLabel.setGeometry(QtCore.QRect(160, 20, 51, 20))
        self.EndingItemLabel.setObjectName("EndingItemLabel")
        self.StartItemNumberSpinBox = QtWidgets.QSpinBox(self.AddChangeFrame)
        self.StartItemNumberSpinBox.setGeometry(QtCore.QRect(60, 40, 81, 22))
        self.StartItemNumberSpinBox.setObjectName("StartItemNumberSpinBox")
        self.EndItemNumberSpinBox = QtWidgets.QSpinBox(self.AddChangeFrame)
        self.EndItemNumberSpinBox.setGeometry(QtCore.QRect(150, 40, 81, 22))
        self.EndItemNumberSpinBox.setObjectName("EndItemNumberSpinBox")
        self.ChangeRadioButton = QtWidgets.QRadioButton(self.AddChangeFrame)
        self.ChangeRadioButton.setGeometry(QtCore.QRect(170, 0, 181, 21))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.ChangeRadioButton.setFont(font)
        self.ChangeRadioButton.setChecked(True)
        self.ChangeRadioButton.setObjectName("ChangeRadioButton")
        self.SubmitChangesButton = QtWidgets.QPushButton(self.centralwidget)
        self.SubmitChangesButton.setGeometry(QtCore.QRect(660, 30, 131, 41))
        font = QtGui.QFont()
        font.setFamily("Segoe UI")
        font.setPointSize(11)
        font.setBold(True)
        font.setItalic(True)
        font.setWeight(75)
        font.setKerning(True)
        self.SubmitChangesButton.setFont(font)
        self.SubmitChangesButton.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor))
        self.SubmitChangesButton.setAutoFillBackground(True)
        self.SubmitChangesButton.setObjectName("SubmitChangesButton")
        MainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Simphony Button Editor"))
        self.StyleGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the style &amp; color of the button using the drop-down menu.</p></body></html>"))
        self.StyleGroupBox.setWhatsThis(_translate("MainWindow", "<html><head/><body><p>Changes style &amp; color of button</p></body></html>"))
        self.StyleGroupBox.setTitle(_translate("MainWindow", "Color/ Style"))
        self.StyleComboBox.setItemText(0, _translate("MainWindow", "Button1"))
        self.StyleComboBox.setItemText(1, _translate("MainWindow", "Button2"))
        self.StyleComboBox.setItemText(2, _translate("MainWindow", "Button3"))
        self.StyleComboBox.setItemText(3, _translate("MainWindow", "Button4"))
        self.StyleComboBox.setItemText(4, _translate("MainWindow", "Button5"))
        self.FontGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the font size the button text.</p></body></html>"))
        self.FontGroupBox.setTitle(_translate("MainWindow", "Font Size"))
        self.OpacityGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the percentage Opacity (visibility) of the button.</p></body></html>"))
        self.OpacityGroupBox.setTitle(_translate("MainWindow", "Opacity"))
        self.NextPageGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Assigns the next menu page to jump to after button completion. </p></body></html>"))
        self.NextPageGroupBox.setTitle(_translate("MainWindow", "Next Page"))
        self.ZindexGroupBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Changes the visibility layer of the button. If a button is set to 1 and another set to 2 in the same spot then you would only see the button with Z index 2.</p></body></html>"))
        self.ZindexGroupBox.setTitle(_translate("MainWindow", "Z Index"))
        self.NewButtonsRadio.setText(_translate("MainWindow", "Create New Buttons"))
        self.StartItemLabel.setText(_translate("MainWindow", "Start Item#"))
        self.EndingItemLabel.setText(_translate("MainWindow", "End Item#"))
        self.StartItemNumberSpinBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Enter Item number. Items must be in sequintial order if adding multiple buttons.</p></body></html>"))
        self.EndItemNumberSpinBox.setToolTip(_translate("MainWindow", "<html><head/><body><p>Items must be in sequintial order if adding multiple buttons.</p></body></html>"))
        self.ChangeRadioButton.setText(_translate("MainWindow", "Update Copied Buttons"))
        self.SubmitChangesButton.setText(_translate("MainWindow", "Make Changes"))


class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.setupUi(self)
        self.SubmitChangesButton.clicked.connect(self.on_clicked)
# + vvvv  
        self.itemTextComboBox = "Button1"
        self.StyleComboBox.activated[str].connect(self.activatedItemComboBox)

    def activatedItemComboBox(self, text):
        self.itemTextComboBox = text
# + ^^^^

    @QtCore.pyqtSlot()
    def on_clicked(self):
        if self.StyleGroupBox.isChecked() is True:
            print(self.itemTextComboBox)  
        if self.FontGroupBox.isChecked() is True:
            print('Font Size = {}'.format(self.FontSpinBox.value()))
        if self.OpacityGroupBox.isChecked() is True:
            print('Opacity%  = {:.2f}'.format(self.OpacityDoubleSpinBox.value()))
        if self.NextPageGroupBox.isChecked() is True:
            print('Next Page = {}'.format(self.NextPageSpinBox.value()))
        if self.ZindexGroupBox.isChecked() is True:
            print('Z Index   = {}'.format(self.ZindexSpinBox.value()))


if __name__ == "__main__":
    import sys
#    import MainCode
#    import MyDesign

    app = QtWidgets.QApplication(sys.argv)

#    MainWindow = QtWidgets.QMainWindow()
#    ui = Ui_MainWindow()
#    ui.setupUi(MainWindow)
#    MainWindow.show()
#    print(Ui_MainWindow)

    w = MainWindow()                                     # <---
    w.show()                                             # <---

    sys.exit(app.exec_())

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM