我们从Python开源项目中,提取了以下3个代码示例,用于说明如何使用PyQt4.QtGui.QToolBox()。
def init_UI(self): self.setAttribute(QtCore.Qt.WA_DeleteOnClose) self.setWindowTitle('Dragonfly Classifier') self.setGeometry(0,0,1100,900) window = QtWidgets.QWidget() hbox = QtWidgets.QHBoxLayout() hbox.setSpacing(0) self.frame_panel = frame_panel.Frame_panel(self) hbox.addWidget(self.frame_panel) window.setLayout(hbox) self.setCentralWidget(window) self.show() self.manual_panel = manual.Manual_panel(self) self.conversion_panel = conversion.Conversion_panel(self) self.embedding_panel = embedding.Embedding_panel(self) self.mlp_panel = mlp.MLP_panel(self) # Menu items menubar = self.menuBar() menubar.setNativeMenuBar(False) # Theme picker thememenu = menubar.addMenu('&Theme') self.theme = QtWidgets.QActionGroup(self, exclusive=True) for i, s in enumerate(map(str, list(QtWidgets.QStyleFactory.keys()))): a = self.theme.addAction(QtWidgets.QAction(s, self, checkable=True)) if i == 0: a.setChecked(True) a.triggered.connect(self.theme_changed) thememenu.addAction(a) # Color map picker cmapmenu = menubar.addMenu('&Color Map') self.color_map = QtWidgets.QActionGroup(self, exclusive=True) for i, s in enumerate(['cubehelix', 'CMRmap', 'gray', 'gray_r', 'jet']): a = self.color_map.addAction(QtWidgets.QAction(s, self, checkable=True)) if i == 0: a.setChecked(True) a.triggered.connect(self.cmap_changed) cmapmenu.addAction(a) toolbox = QtWidgets.QToolBox(self) hbox.addWidget(toolbox) toolbox.setFixedWidth(300) toolbox.addItem(QtWidgets.QWidget(self), '&Display') toolbox.addItem(self.manual_panel, '&Manual') toolbox.addItem(self.conversion_panel, '&Conversion') toolbox.addItem(self.embedding_panel, '&Embedding') toolbox.addItem(self.mlp_panel, 'M&LP') toolbox.currentChanged.connect(self.tab_changed)
def createToolBox(self): self.buttonGroup = QtGui.QButtonGroup() self.buttonGroup.setExclusive(False) self.buttonGroup.buttonClicked[int].connect(self.buttonGroupClicked) layout = QtGui.QGridLayout() layout.addWidget(self.createCellWidget("Conditional", DiagramItem.Conditional), 0, 0) layout.addWidget(self.createCellWidget("Process", DiagramItem.Step), 0, 1) layout.addWidget(self.createCellWidget("Input/Output", DiagramItem.Io), 1, 0) textButton = QtGui.QToolButton() textButton.setCheckable(True) self.buttonGroup.addButton(textButton, self.InsertTextButton) textButton.setIcon(QtGui.QIcon(QtGui.QPixmap(':/images/textpointer.png') .scaled(30, 30))) textButton.setIconSize(QtCore.QSize(50, 50)) textLayout = QtGui.QGridLayout() textLayout.addWidget(textButton, 0, 0, QtCore.Qt.AlignHCenter) textLayout.addWidget(QtGui.QLabel("Text"), 1, 0, QtCore.Qt.AlignCenter) textWidget = QtGui.QWidget() textWidget.setLayout(textLayout) layout.addWidget(textWidget, 1, 1) layout.setRowStretch(3, 10) layout.setColumnStretch(2, 10) itemWidget = QtGui.QWidget() itemWidget.setLayout(layout) self.backgroundButtonGroup = QtGui.QButtonGroup() self.backgroundButtonGroup.buttonClicked.connect(self.backgroundButtonGroupClicked) backgroundLayout = QtGui.QGridLayout() backgroundLayout.addWidget(self.createBackgroundCellWidget("Blue Grid", ':/images/background1.png'), 0, 0) backgroundLayout.addWidget(self.createBackgroundCellWidget("White Grid", ':/images/background2.png'), 0, 1) backgroundLayout.addWidget(self.createBackgroundCellWidget("Gray Grid", ':/images/background3.png'), 1, 0) backgroundLayout.addWidget(self.createBackgroundCellWidget("No Grid", ':/images/background4.png'), 1, 1) backgroundLayout.setRowStretch(2, 10) backgroundLayout.setColumnStretch(2, 10) backgroundWidget = QtGui.QWidget() backgroundWidget.setLayout(backgroundLayout) self.toolBox = QtGui.QToolBox() self.toolBox.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum, QtGui.QSizePolicy.Ignored)) self.toolBox.setMinimumWidth(itemWidget.sizeHint().width()) self.toolBox.addItem(itemWidget, "Basic Flowchart Shapes") self.toolBox.addItem(backgroundWidget, "Backgrounds")
def createToolBox(self): self.buttonGroup = QtGui.QButtonGroup() self.buttonGroup.setExclusive(False) #self.buttonGroup.buttonClicked[int].connect(self.buttonGroupClicked) layout = QtGui.QGridLayout() #layout.addWidget(self.createCellWidget("Conditional", DiagramItem.Conditional), 0, 0) #layout.addWidget(self.createCellWidget("Process", DiagramItem.Step), 0, 1) #layout.addWidget(self.createCellWidget("Input/Output", DiagramItem.Io), 1, 0) textButton = QtGui.QToolButton() textButton.setCheckable(True) textButton.setIcon(QtGui.QIcon(QtGui.QPixmap(':/images/textpointer.png') .scaled(30, 30))) textButton.setIconSize(QtCore.QSize(50, 50)) textLayout = QtGui.QGridLayout() textLayout.addWidget(textButton, 0, 0, QtCore.Qt.AlignHCenter) textLayout.addWidget(QtGui.QLabel("Text"), 1, 0, QtCore.Qt.AlignCenter) textWidget = QtGui.QWidget() textWidget.setLayout(textLayout) layout.addWidget(textWidget, 1, 1) layout.setRowStretch(3, 10) layout.setColumnStretch(2, 10) itemWidget = QtGui.QWidget() itemWidget.setLayout(layout) self.backgroundButtonGroup = QtGui.QButtonGroup() #self.backgroundButtonGroup.buttonClicked.connect(self.backgroundButtonGroupClicked) backgroundLayout = QtGui.QGridLayout() backgroundLayout.addWidget(self.createBackgroundCellWidget("Blue Grid", ':/images/background1.png'), 0, 0) backgroundLayout.addWidget(self.createBackgroundCellWidget("White Grid", ':/images/background2.png'), 0, 1) backgroundLayout.addWidget(self.createBackgroundCellWidget("Gray Grid", ':/images/background3.png'), 1, 0) backgroundLayout.addWidget(self.createBackgroundCellWidget("No Grid", ':/images/background4.png'), 1, 1) backgroundLayout.setRowStretch(2, 10) backgroundLayout.setColumnStretch(2, 10) backgroundWidget = QtGui.QWidget() backgroundWidget.setLayout(backgroundLayout) self.toolBox = QtGui.QToolBox() self.toolBox.setSizePolicy(QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum, QtGui.QSizePolicy.Ignored)) self.toolBox.setMinimumWidth(itemWidget.sizeHint().width()) self.toolBox.addItem(itemWidget, "Basic Flowchart Shapes") self.toolBox.addItem(backgroundWidget, "Backgrounds")