0

これは私のコードです:

import sys
from PyQt4 import QtGui, QtCore 

def prova():
    print "test event"


class MainWindow(QtGui.QMainWindow):
    def __init__(self):
        QtGui.QMainWindow.__init__(self)                                              

    self.resize(350, 250) # ridimensiona la finestra
        self.setWindowTitle('MainWindow')


    pause = QtGui.QAction(QtGui.QIcon("icons/pause.gif"),"Pause",self)
    pause.setStatusTip("Pause!!")
    pause.triggered.connect(prova);

    play = QtGui.QAction(QtGui.QIcon("icons/play.png"),"Play",self)
        play.setStatusTip("Start!")     

    toolbar = self.addToolBar('My toolbar')
    toolbar.addAction(pause)
    toolbar.addAction(play)
    toolbar.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon)

    widget = QtGui.QWidget(self)
    hbox = QtGui.QHBoxLayout(widget)

    label = QtGui.QLabel()
    label.setText("test label") 
    hbox.addWidget(label)
    hbox.setAlignment(label,QtCore.Qt.Alignment(QtCore.Qt.AlignRight))

app = QtGui.QApplication(sys.argv)
main = MainWindow()
main.show()
sys.exit(app.exec_())

私の問題は、水平ボックスのhboxとその中のウィジェットがツールバーにオーバーレイされていることです。ツールバーの下にhboxを配置して、オーバーレイを修正するにはどうすればよいですか?

4

1 に答える 1

1

問題は、中央ウィジェットとして設定するのではなく、widget子として直接追加していることです。mainしたがって、代わりに:

widget = QtGui.QWidget(self)

使用する:

widget = QtGui.QWidget()
self.setCentralWidget(widget)
于 2012-12-05T17:22:23.720 に答える