Python源码示例:PyQt5.QtWidgets.QWidget()
示例1
def __init__(self, parent=None, frame=QtWidgets.QFrame.Box):
super(FIRSTUI.ScrollWidget, self).__init__()
# Container Widget
widget = QtWidgets.QWidget()
# Layout of Container Widget
self.layout = QtWidgets.QVBoxLayout(self)
self.layout.setContentsMargins(0, 0, 0, 0)
widget.setLayout(self.layout)
# Scroll Area Properties
scroll = QtWidgets.QScrollArea()
scroll.setFrameShape(frame)
scroll.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
scroll.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
scroll.setWidgetResizable(True)
scroll.setWidget(widget)
# Scroll Area Layer add
scroll_layout = QtWidgets.QVBoxLayout(self)
scroll_layout.addWidget(scroll)
scroll_layout.setContentsMargins(0, 0, 0, 0)
self.setLayout(scroll_layout)
示例2
def __init__(self, parent):
QtWidgets.QWidget.__init__(self)
self.setupUi(self)
self.parent = parent
# self.result_area.setEnabled(False)
if self.parent.results.get_formula:
self.formula_label.setVisible(True)
self.formula_area.setEnabled(True)
else:
self.formula_label.setVisible(False)
self.formula_area.setVisible(False)
self.action_selector.setEnabled(False)
self.action_button.setEnabled(False)
self.action_selector.addItem(self.parent.ANNOT_CODE)
self.action_button.clicked.connect(self.action_clicked)
self.action_selector.currentIndexChanged[str].connect(self.action_selector_changed)
示例3
def __init__(self, url=QUrl(), title="', tab_id=0, *,
scroll_pos_perc=(0, 0),
load_status=usertypes.LoadStatus.success,
progress=0, can_go_back=None, can_go_forward=None):
super().__init__(win_id=0, mode_manager=None, private=False)
self._load_status = load_status
self._title = title
self._url = url
self._progress = progress
self.history = FakeWebTabHistory(self, can_go_back=can_go_back,
can_go_forward=can_go_forward)
self.scroller = FakeWebTabScroller(self, scroll_pos_perc)
self.audio = FakeWebTabAudio(self)
self.private_api = FakeWebTabPrivate(tab=self, mode_manager=None)
wrapped = QWidget()
self._layout.wrap(self, wrapped)
示例4
def on_focus_changed(_old, new):
"""Register currently focused main window in the object registry."""
if new is None:
return
if not isinstance(new, QWidget):
log.misc.debug("on_focus_changed called with non-QWidget {!r}".format(
new))
return
window = new.window()
if isinstance(window, mainwindow.MainWindow):
objreg.register('last-focused-main-window', window, update=True)
# A focused window must also be visible, and in this case we should
# consider it as the most recently looked-at window
objreg.register('last-visible-main-window', window, update=True)
示例5
def __init__(self,
name: str,
items: typing.Iterable[_ItemType],
sort: bool = True,
delete_func: util.DeleteFuncType = None,
parent: QWidget = None):
super().__init__(parent)
self.name = name
self.srcmodel = QStandardItemModel(parent=self)
self._pattern = ''
# ListCategory filters all columns
self.columns_to_filter = [0, 1, 2]
self.setFilterKeyColumn(-1)
for item in items:
self.srcmodel.appendRow([QStandardItem(x) for x in item])
self.setSourceModel(self.srcmodel)
self.delete_func = delete_func
self._sort = sort
示例6
def create(win_id: int,
private: bool,
parent: QWidget = None) -> 'AbstractTab':
"""Get a QtWebKit/QtWebEngine tab object.
Args:
win_id: The window ID where the tab will be shown.
private: Whether the tab is a private/off the record tab.
parent: The Qt parent to set.
"""
# Importing modules here so we don't depend on QtWebEngine without the
# argument and to avoid circular imports.
mode_manager = modeman.instance(win_id)
if objects.backend == usertypes.Backend.QtWebEngine:
from qutebrowser.browser.webengine import webenginetab
tab_class = webenginetab.WebEngineTab # type: typing.Type[AbstractTab]
else:
from qutebrowser.browser.webkit import webkittab
tab_class = webkittab.WebKitTab
return tab_class(win_id=win_id, mode_manager=mode_manager, private=private,
parent=parent)
示例7
def _set_widget(self, widget: QWidget) -> None:
# pylint: disable=protected-access
self._widget = widget
self.data.splitter = miscwidgets.InspectorSplitter(widget)
self._layout.wrap(self, self.data.splitter)
self.history._history = widget.history()
self.history.private_api._history = widget.history()
self.scroller._init_widget(widget)
self.caret._widget = widget
self.zoom._widget = widget
self.search._widget = widget
self.printing._widget = widget
self.action._widget = widget
self.elements._widget = widget
self.audio._widget = widget
self.private_api._widget = widget
self.settings._settings = widget.settings()
self._install_event_filter()
self.zoom.apply_default()
示例8
def create(*, splitter: 'miscwidgets.InspectorSplitter',
win_id: int,
parent: QWidget = None) -> 'AbstractWebInspector':
"""Get a WebKitInspector/WebEngineInspector.
Args:
splitter: InspectorSplitter where the inspector can be placed.
win_id: The window ID this inspector is associated with.
parent: The Qt parent to set.
"""
# Importing modules here so we don't depend on QtWebEngine without the
# argument and to avoid circular imports.
if objects.backend == usertypes.Backend.QtWebEngine:
from qutebrowser.browser.webengine import webengineinspector
if webengineinspector.supports_new():
return webengineinspector.WebEngineInspector(
splitter, win_id, parent)
else:
return webengineinspector.LegacyWebEngineInspector(
splitter, win_id, parent)
else:
from qutebrowser.browser.webkit import webkitinspector
return webkitinspector.WebKitInspector(splitter, win_id, parent)
示例9
def __init__(self, *, win_id: int,
private: bool,
parent: QWidget = None) -> None:
misc.CommandLineEdit.__init__(self, parent=parent)
misc.MinimalLineEditMixin.__init__(self)
self._win_id = win_id
if not private:
command_history = objreg.get('command-history')
self.history.history = command_history.data
self.history.changed.connect(command_history.changed)
self.setSizePolicy(QSizePolicy.MinimumExpanding, QSizePolicy.Ignored)
self.cursorPositionChanged.connect(
self.update_completion) # type: ignore[arg-type]
self.textChanged.connect(
self.update_completion) # type: ignore[arg-type]
self.textChanged.connect(self.updateGeometry)
self.textChanged.connect(self._incremental_search)
示例10
def _add_widgets(self):
"""Add or readd all widgets to the VBox."""
self._vbox.removeWidget(self.tabbed_browser.widget)
self._vbox.removeWidget(self._downloadview)
self._vbox.removeWidget(self.status)
widgets = [self.tabbed_browser.widget] # type: typing.List[QWidget]
downloads_position = config.val.downloads.position
if downloads_position == 'top':
widgets.insert(0, self._downloadview)
elif downloads_position == 'bottom':
widgets.append(self._downloadview)
else:
raise ValueError("Invalid position {}!".format(downloads_position))
status_position = config.val.statusbar.position
if status_position == 'top':
widgets.insert(0, self.status)
elif status_position == 'bottom':
widgets.append(self.status)
else:
raise ValueError("Invalid position {}!".format(status_position))
for widget in widgets:
self._vbox.addWidget(widget)
示例11
def setupUi(self, ScoreWindow):
ScoreWindow.setObjectName("ScoreWindow")
ScoreWindow.resize(471, 386)
self.centralwidget = QtWidgets.QWidget(ScoreWindow)
self.centralwidget.setObjectName("centralwidget")
self.Score = QtWidgets.QLineEdit(self.centralwidget)
self.Score.setGeometry(QtCore.QRect(180, 180, 113, 22))
self.Score.setObjectName("Score")
self.teamscore = QtWidgets.QLabel(self.centralwidget)
self.teamscore.setGeometry(QtCore.QRect(180, 130, 151, 20))
font = QtGui.QFont()
font.setBold(True)
font.setWeight(75)
self.teamscore.setFont(font)
self.teamscore.setObjectName("teamscore")
ScoreWindow.setCentralWidget(self.centralwidget)
self.statusbar = QtWidgets.QStatusBar(ScoreWindow)
self.statusbar.setObjectName("statusbar")
ScoreWindow.setStatusBar(self.statusbar)
self.retranslateUi(ScoreWindow)
QtCore.QMetaObject.connectSlotsByName(ScoreWindow)
示例12
def setupUi(self, QHangupsConversationsList):
QHangupsConversationsList.setObjectName("QHangupsConversationsList")
QHangupsConversationsList.resize(250, 500)
self.centralwidget = QtWidgets.QWidget(QHangupsConversationsList)
self.centralwidget.setObjectName("centralwidget")
self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget)
self.verticalLayout.setObjectName("verticalLayout")
self.conversationsListWidget = QtWidgets.QListWidget(self.centralwidget)
self.conversationsListWidget.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
self.conversationsListWidget.setObjectName("conversationsListWidget")
self.verticalLayout.addWidget(self.conversationsListWidget)
QHangupsConversationsList.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(QHangupsConversationsList)
self.menubar.setGeometry(QtCore.QRect(0, 0, 250, 27))
self.menubar.setObjectName("menubar")
QHangupsConversationsList.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(QHangupsConversationsList)
self.statusbar.setObjectName("statusbar")
QHangupsConversationsList.setStatusBar(self.statusbar)
self.retranslateUi(QHangupsConversationsList)
QtCore.QMetaObject.connectSlotsByName(QHangupsConversationsList)
示例13
def setupUi(self, QHangupsConversations):
QHangupsConversations.setObjectName("QHangupsConversations")
QHangupsConversations.resize(500, 350)
self.centralwidget = QtWidgets.QWidget(QHangupsConversations)
self.centralwidget.setObjectName("centralwidget")
self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
self.gridLayout.setObjectName("gridLayout")
self.conversationsTabWidget = QtWidgets.QTabWidget(self.centralwidget)
self.conversationsTabWidget.setElideMode(QtCore.Qt.ElideRight)
self.conversationsTabWidget.setTabsClosable(True)
self.conversationsTabWidget.setMovable(True)
self.conversationsTabWidget.setObjectName("conversationsTabWidget")
self.gridLayout.addWidget(self.conversationsTabWidget, 0, 0, 1, 1)
QHangupsConversations.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(QHangupsConversations)
self.menubar.setGeometry(QtCore.QRect(0, 0, 500, 27))
self.menubar.setObjectName("menubar")
QHangupsConversations.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(QHangupsConversations)
self.statusbar.setObjectName("statusbar")
QHangupsConversations.setStatusBar(self.statusbar)
self.retranslateUi(QHangupsConversations)
self.conversationsTabWidget.setCurrentIndex(-1)
QtCore.QMetaObject.connectSlotsByName(QHangupsConversations)
示例14
def populate(self):
self.setFeatures(QtWidgets.QDockWidget.DockWidgetClosable)
self.setTitleBarWidget(QtWidgets.QWidget(self)) # Removes titlebar
self.sideDockTabWidget = QtWidgets.QTabWidget(self)
self.setWidget(self.sideDockTabWidget)
# This order is important
self.bookmarkModel = QtGui.QStandardItemModel(self)
self.bookmarkProxyModel = BookmarkProxyModel(self)
self.bookmarks = Bookmarks(self)
self.bookmarks.generate_bookmark_model()
if not self.parent.are_we_doing_images_only:
self.annotationModel = QtGui.QStandardItemModel(self)
self.annotations = Annotations(self)
self.annotations.generate_annotation_model()
self.searchResultsModel = QtGui.QStandardItemModel(self)
self.search = Search(self)
示例15
def buttonsLayout(self):
self.matrix = False
vbox = QVBoxLayout()
interactionModeLayout = QVBoxLayout()
self.interactionModeButton = QtWidgets.QPushButton('visma')
self.interactionModeButton.clicked.connect(self.interactionMode)
interactionModeLayout.addWidget(self.interactionModeButton)
interactionModeWidget = QWidget(self)
interactionModeWidget.setLayout(interactionModeLayout)
interactionModeWidget.setFixedSize(275, 50)
topButtonSplitter = QSplitter(Qt.Horizontal)
topButtonSplitter.addWidget(interactionModeWidget)
permanentButtons = QWidget(self)
topButtonSplitter.addWidget(permanentButtons)
self.bottomButton = QFrame()
self.buttonSplitter = QSplitter(Qt.Vertical)
self.buttonSplitter.addWidget(topButtonSplitter)
self.buttonSplitter.addWidget(self.bottomButton)
vbox.addWidget(self.buttonSplitter)
return vbox
示例16
def qSolveFigure(workspace):
"""GUI layout for quick simplifier
Arguments:
workspace {QtWidgets.QWidget} -- main layout
Returns:
qSolLayout {QtWidgets.QVBoxLayout} -- quick simplifier layout
"""
bg = workspace.palette().window().color()
bgcolor = (bg.redF(), bg.greenF(), bg.blueF())
workspace.qSolveFigure = Figure(edgecolor=bgcolor, facecolor=bgcolor)
workspace.solcanvas = FigureCanvas(workspace.qSolveFigure)
workspace.qSolveFigure.clear()
qSolLayout = QtWidgets.QVBoxLayout()
qSolLayout.addWidget(workspace.solcanvas)
return qSolLayout
示例17
def view_clicked(self, index):
key = self.views_model.data(index)
if key in self.views_ui:
# Get the new view
widget = QtWidgets.QWidget()
layout = self.views_ui[key]()
if not layout:
layout = QtWidgets.QVBoxLayout()
widget.setLayout(layout)
# Remove the old view to the splitter
old_widget = self.splitter.widget(1)
if old_widget:
old_widget.hide()
old_widget.deleteLater()
self.splitter.insertWidget(1, widget)
示例18
def create_message_box(title, text, icon="information", width=150):
msg = QMessageBox()
msg.setWindowTitle(title)
lineCnt = len(text.split('\n'))
if lineCnt > 15:
scroll = QtWidgets.QScrollArea()
scroll.setWidgetResizable(1)
content = QtWidgets.QWidget()
scroll.setWidget(content)
layout = QtWidgets.QVBoxLayout(content)
tmpLabel = QtWidgets.QLabel(text)
tmpLabel.setTextInteractionFlags(QtCore.Qt.TextSelectableByMouse)
layout.addWidget(tmpLabel)
msg.layout().addWidget(scroll, 12, 10, 1, msg.layout().columnCount())
msg.setStyleSheet("QScrollArea{min-width:550 px; min-height: 400px}")
else:
msg.setText(text)
if icon == "warning":
msg.setIcon(QtWidgets.QMessageBox.Warning)
msg.setStyleSheet("QMessageBox Warning{min-width: 50 px;}")
else:
msg.setIcon(QtWidgets.QMessageBox.Information)
msg.setStyleSheet("QMessageBox Information{min-width: 50 px;}")
msg.setStyleSheet("QmessageBox QLabel{min-width: "+str(width)+"px;}")
msg.exec_()
示例19
def __init__(self, etree, control, parent=None):
QtWidgets.QWidget.__init__(self)
self.setLayout(QtWidgets.QVBoxLayout())
self.initsize = None
pkmixins.LayoutMixin._init(self, etree, control, parent)
示例20
def window_bgcolor():
tmp = QtWidgets.QWidget()
return tmp.palette().color(QtGui.QPalette.Window)
示例21
def __init__(self):
super(SimProgressScreen, self).__init__()
self.text = ''
self.simFinished = False
self.textBox = QtWidgets.QTextEdit()
self.textBox.setReadOnly(True)
self.textBox.setAcceptRichText(True)
self.terminate_btn = QtWidgets.QPushButton('Terminate')
self.terminate_btn.clicked.connect(self.close)
mainLayout = QtWidgets.QGridLayout()
mainLayout.addWidget(self.textBox)
mainLayout.addWidget(self.terminate_btn)
self.central_widget = QtWidgets.QWidget()
self.central_widget.setLayout(mainLayout)
self.setCentralWidget(self.central_widget)
self.resize(800,500)
self.setWindowTitle('Simulation Progress')
try:
gui_icon = os.path.join(SIMNIBSDIR,'resources', 'gui_icon.gif')
self.setWindowIcon(QtGui.QIcon(gui_icon))
except:
pass
示例22
def __init__(self, parent):
QtWidgets.QWidget.__init__(self)
self.setupUi(self)
self.parent = parent
self.action_selector.setEnabled(False)
self.action_button.setEnabled(False)
for k in self.parent.actions.keys():
self.action_selector.addItem(k)
self.action_button.clicked.connect(self.action_clicked)
self.action_selector.currentIndexChanged[str].connect(self.action_selector_changed)
示例23
def create_page(page, parent=None):
"""A page is a custom layout made by stacking vertically various
widgets which can be themselves horizontal collections of widgets
:param page: an interable containing tuples of names of special widget
to position as well as their value.
"""
new_page = qt_widgets.QWidget()
layout = qt_widgets.QVBoxLayout()
for kind, value in page:
if kind.lower() == "text":
add_text_to_layout(layout, value)
elif kind.lower() == "image":
add_image_to_layout(layout, value)
elif kind.lower() == "list of images":
add_list_of_images_to_layout(layout, value)
elif kind.lower() == "list of images with captions":
add_list_of_images_with_captions_to_layout(layout, value)
elif kind.lower() == "list of images with buttons":
add_list_of_images_with_buttons_to_layout(layout, value, parent)
elif kind.lower() == "list of buttons":
add_list_of_buttons_to_layout(layout, value, parent)
elif kind.lower() == "button":
add_button(layout, value, parent)
else:
print("Unrecognized page item: {}".format(kind))
new_page.setLayout(layout)
return new_page
示例24
def add_list_of_images_with_captions_to_layout(layout, images):
''' adds a list of images shown in a horizontal layout with
caption underneath to an already existing layout'''
h_layout = qt_widgets.QHBoxLayout()
h_box = qt_widgets.QGroupBox('')
for image, caption in images:
widget = qt_widgets.QWidget()
v_layout = qt_widgets.QVBoxLayout()
add_image_to_layout(v_layout, image)
add_text_to_layout(v_layout, caption)
widget.setLayout(v_layout)
h_layout.addWidget(widget)
h_box.setLayout(h_layout)
layout.addWidget(h_box)
示例25
def add_list_of_images_with_buttons_to_layout(layout, images, parent):
''' adds a list of images shown in a horizontal layout with
button underneath to an already existing layout'''
h_layout = qt_widgets.QHBoxLayout()
h_box = qt_widgets.QGroupBox('')
for image, label in images:
widget = qt_widgets.QWidget()
v_layout = qt_widgets.QVBoxLayout()
add_image_to_layout(v_layout, image)
add_button(v_layout, label, parent)
widget.setLayout(v_layout)
h_layout.addWidget(widget)
h_box.setLayout(h_layout)
layout.addWidget(h_box)
示例26
def blue_widget(qtbot):
widget = QWidget()
widget.setStyleSheet('background-color: blue;')
qtbot.add_widget(widget)
return widget
示例27
def red_widget(qtbot):
widget = QWidget()
widget.setStyleSheet('background-color: red;')
qtbot.add_widget(widget)
return widget
示例28
def __init__(self,
inspector_widget: QWidget,
splitter: miscwidgets.InspectorSplitter,
win_id: int,
parent: QWidget = None) -> None:
super().__init__(splitter, win_id, parent)
self._set_widget(inspector_widget)
self._inspected_page = None
self.needs_recreate = False
示例29
def container(self, qtbot):
wrapped = WrappedWidget()
parent = QWidget()
qtbot.add_widget(wrapped)
qtbot.add_widget(parent)
layout = miscwidgets.WrapperLayout(parent)
layout.wrap(parent, wrapped)
parent.wrapped = wrapped
return parent
示例30
def __init__(self, *,
delete_func: util.DeleteFuncType = None,
parent: QWidget = None) -> None:
"""Create a new History completion category."""
super().__init__(parent=parent)
self.name = "History"
self._query = None # type: typing.Optional[sql.Query]
# advertise that this model filters by URL and title
self.columns_to_filter = [0, 1]
self.delete_func = delete_func
self._empty_prefix = None # type: typing.Optional[str]