Here is a small example. I tried putting a vertical spacer on the bottom yet these stacked widgets want to take up space when resized.
#!/usr/bin/env python from PyQt4.QtCore import * from PyQt4.QtGui import * class TestWidget(QWidget): def __init__(self, labels, parent=None): super(TestWidget, self).__init__(parent) layout = QGridLayout() for i, output in enumerate(labels): layout.addWidget(QLabel(output), i, 0) combo = QComboBox() combo.addItems([ "Slider", "Spinner", ]) layout.addWidget(combo, i, 1) stack = QStackedWidget() horizontalSlider = QSlider() horizontalSlider.setOrientation(Qt.Horizontal) spinner = QSpinBox() spinner.valueChanged.connect(horizontalSlider.setValue) horizontalSlider.valueChanged.connect(spinner.setValue) stack.addWidget(horizontalSlider) stack.addWidget(spinner) combo.currentIndexChanged.connect(stack.setCurrentIndex) layout.addWidget(stack, i, 2) vertical_spacer = QSpacerItem(0, 0, QSizePolicy.Minimum, QSizePolicy.Expanding) layout.addItem(vertical_spacer, len(labels), 0, 1, 3) self.setLayout(layout) if __name__ == '__main__': import sys app = QApplication(sys.argv) ocw = TestWidget(['a', 'b', 'c', 'd', 'e']) ocw.show() sys.exit(app.exec_())
_______________________________________________ PyQt mailing list PyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt