2014-11-08 44 views
1

我對Qt和python有點新鮮。我創建了一個簡單的GUI,它由垂直滑塊和QLCDNumber小部件組成。我有某種方法通過使用函數訪問滑塊的值。但是現在我想在QLCDNumber顯示中顯示新生成的值。我該怎麼做?是否有任何方法在QLCDNumber顯示中顯示新值(ipp)?我的代碼如下:在QLCDNumber小部件上顯示數字

from PyQt4 import QtCore, QtGui 

try: 
    _fromUtf8 = QtCore.QString.fromUtf8 
except AttributeError: 
    _fromUtf8 = lambda s: s 

class Ui_MainWindow(object): 
    def setupUi(self, MainWindow): 
     MainWindow.setObjectName(_fromUtf8("MainWindow")) 
     MainWindow.resize(733, 498) 
     self.centralWidget = QtGui.QWidget(MainWindow) 
     self.centralWidget.setObjectName(_fromUtf8("centralWidget")) 
     self.verticalSlider = QtGui.QSlider(self.centralWidget) 
     self.verticalSlider.setGeometry(QtCore.QRect(110, 80, 20, 331)) 
     self.verticalSlider.setOrientation(QtCore.Qt.Vertical) 
     self.verticalSlider.setObjectName(_fromUtf8("verticalSlider")) 
     self.lcdNumber = QtGui.QLCDNumber(self.centralWidget) 
     self.lcdNumber.setGeometry(QtCore.QRect(320, 180, 191, 81)) 
     self.lcdNumber.setObjectName(_fromUtf8("lcdNumber")) 
     MainWindow.setCentralWidget(self.centralWidget) 
     self.menuBar = QtGui.QMenuBar(MainWindow) 
     self.menuBar.setGeometry(QtCore.QRect(0, 0, 733, 21)) 
     self.menuBar.setObjectName(_fromUtf8("menuBar")) 
     MainWindow.setMenuBar(self.menuBar) 
     self.mainToolBar = QtGui.QToolBar(MainWindow) 
     self.mainToolBar.setObjectName(_fromUtf8("mainToolBar")) 
     MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.mainToolBar) 
     self.statusBar = QtGui.QStatusBar(MainWindow) 
     self.statusBar.setObjectName(_fromUtf8("statusBar")) 
     MainWindow.setStatusBar(self.statusBar) 

     self.retranslateUi(MainWindow) 
     QtCore.QMetaObject.connectSlotsByName(MainWindow) 
     QtCore.QObject.connect(self.verticalSlider, QtCore.SIGNAL(_fromUtf8("valueChanged(int)")), self.abc) 


    def retranslateUi(self, MainWindow): 
     MainWindow.setWindowTitle(QtGui.QApplication.translate("MainWindow", "MainWindow", None, QtGui.QApplication.UnicodeUTF8)) 

    def abc(self, ip): 
     self.ipp = ip - 10 

if __name__ == "__main__": 
    import sys 
    app = QtGui.QApplication(sys.argv) 
    MainWindow = QtGui.QMainWindow() 
    ui = Ui_MainWindow() 
    ui.setupUi(MainWindow) 
    MainWindow.show() 
    sys.exit(app.exec_()) 

回答

3

您需要添加一個簡單的功能

def abc(self, ip): 
     self.ipp = ip - 10 
     self.lcdNumber.display(self.ipp) 

這將顯示新生成的價值