def __init__(self): super(MainWindow, self).__init__() toolBar = QToolBar() self.addToolBar(toolBar) file_menu = self.menuBar().addMenu('&File') open_auction = QAction(QIcon.fromTheme('document-open'), "&open..", self, shortcut=QKeySequence.Open, triggered=self.open) file_menu.addAction(open_auction) exit_action = QAction(QIcon.fromTheme("application-exit"), "E&xit", self, shortcut="Ctrl+q", triggered=self.close) file_menu.addAction(exit_action) play_menu = self.menuBar().addMenu('&Play') play_icon = QIcon(QPixmap(":/icons/01.png")) # 增加一个Action到toolBar toolBar.addAction(play_icon, "Play") play_action = QAction(play_icon, "E&s", self, shortcut="Ctrl+e", triggered=self.close) play_menu.addAction(play_action)
def __init__(self) -> None: super().__init__() self.ui = MainWindowUI() # action self.action_run = QAction(parent=self, text="Run") self.action_stop = QAction(parent=self, text="Stop") self.action_run.triggered.connect(self.start_plot) # type:ignore self.action_stop.triggered.connect(self.stop_plot) # type:ignore self.action_run.setEnabled(False) self.action_stop.setEnabled(False) # setup ui self.ui.setup_ui(self) self.resize(1100, 600) self.move(50, 50) self.ui.port_combobox1.currentTextChanged.connect( self.change_port_combobox1) self.ui.port_combobox2.currentTextChanged.connect( self.change_port_combobox2) self.ui.btn_clear_monitor1.clicked.connect( self.clear_monitor1) # type:ignore self.ui.btn_clear_monitor2.clicked.connect( self.clear_monitor2) # type:ignore # setup toolbar self.ui.toolbar.addAction(self.action_run) # type:ignore self.ui.toolbar.addSeparator() self.ui.toolbar.addAction(self.action_stop) # type:ignore self.ui.toolbar.addSeparator() self.ui.toolbar.addWidget(self.ui.baudrate_combobox) self.ui.toolbar.addSeparator() self.ui.toolbar.addWidget(self.ui.port_combobox1) self.ui.toolbar.addSeparator() self.ui.toolbar.addWidget(self.ui.port_combobox2)
def createTrayIcon(self): self.showProgramsAction = QAction("Programs", self) self.showProgramsAction.triggered.connect(self.showProgramsPage) self.showNewProgramAction = QAction("New Program", self) self.showNewProgramAction.triggered.connect(self.newProgram) self.showSetProgramAction = QAction("Logs", self) self.showSetProgramAction.triggered.connect(self.showLogsPage) self.showDocumentationAction = QAction("Documentation", self) self.showDocumentationAction.triggered.connect(self.showDocumentation) self.quitAction = QAction("Quit", self) self.quitAction.triggered.connect(self.quit) self.trayIconMenu = QMenu(self) self.trayIconMenu.addAction(self.showProgramsAction) self.trayIconMenu.addAction(self.showSetProgramAction) self.trayIconMenu.addAction(self.showNewProgramAction) self.trayIconMenu.addAction(self.showDocumentationAction) self.trayIconMenu.addSeparator() self.trayIconMenu.addAction(self.quitAction) self.trayIcon = QSystemTrayIcon(self) self.trayIcon.setContextMenu(self.trayIconMenu) self.trayIcon.activated.connect(self.iconActivated) self.trayIcon.setIcon(QIcon(":/images/yammi-banana-icon.png")) self.trayIcon.show()
def _on_item_click(self, action: QtGui.QAction): action_name = action.objectName() group = action.actionGroup() group_name = group.objectName() if group else None value: Optional[Any] = None setting = None if action_name == "close": self.com.on_close_in_settings.emit("Clicked close in settings") elif action_name == "message_languages": self.message_box.setText(MESSAGE_LANGUAGES) self.message_box.exec_() elif group_name == "website_group" or action_name.startswith("file:/"): url = action_name self.com.on_open_url.emit(url) elif group_name == "settings_group": setting = action_name value = action.isChecked() elif group_name == "mode_group": setting = "mode" value = action_name elif group_name == "language_group": setting = "language" languages = [ a.objectName() for a in group.actions() if a.isChecked() ] if not languages: languages = [action_name] action.setChecked(True) value = languages if None not in [setting, value]: self.settings.setValue(str(setting), value)
def add_encrypt_menu(menubar: QMenuBar, parent: QMainWindow): def _open_key_mgr_dialog(): open_key_mgr_dialog(parent) def _open_encrypt_dialog(): open_encrypt_dialog(parent) def _open_decrypt_dialog(): open_decrypt_dialog(parent) encryptMenu = menubar.addMenu("加密/解密") key_mgr_act = QAction("密钥管理", parent) key_mgr_act.triggered.connect(_open_key_mgr_dialog) encrypt_act = QAction("加密图片", parent) encrypt_act.triggered.connect(_open_encrypt_dialog) decrypt_act = QAction("解密图片", parent) decrypt_act.triggered.connect(_open_decrypt_dialog) encryptMenu.addAction(key_mgr_act) encryptMenu.addAction(encrypt_act) encryptMenu.addAction(decrypt_act)
def addTargetActions(self, menu: QMenu): selected_items = [ i.text() for i in self.list_input_files.selectedItems() ] selected_items += [ self.currentOutputList[i.row()] for i in self.currentOutputListView.selectedIndexes() ] menu.addSeparator() # cannot use default arg to force coping the type here, since the signal also provides other inputs func_create = lambda _t, items: lambda: self.currentOutputList.appendTarget( _t(items)) for t in target_types: if t.validate(selected_items): create_action = QAction(t.description, menu) create_action.triggered.connect(func_create(t, selected_items)) menu.addAction(create_action) menu.addSeparator() func_create_batch = lambda _t, items: lambda: self.currentOutputList.extendTargets( [_t(i) for i in items]) for t in target_types: if all(t.validate([item]) for item in selected_items): create_action = QAction("Batch " + t.description, menu) create_action.triggered.connect( func_create_batch(t, selected_items)) menu.addAction(create_action)
def contextMenuEvent(self, e): context = QMenu(self) crap = QAction("thisone", self) crap.triggered.connect(self.fuckthisshit) context.addAction(crap) context.addAction(QAction("test 2", self)) context.addAction(QAction("test 3", self)) context.exec_(e.globalPos())
def add_BookBookmarkView_signal(self, old_view): self.add_BookmarkView_signal() action_back = QAction('Back', self) action_remove_all = QAction('Remove all', self) action_back.triggered.connect(lambda: self.toggle_view(old_view)) action_remove_all.triggered.connect( lambda: self.view.delete_bookmark_all('user_book', self.view.b_id)) self.MainToolBar.addAction(action_back) self.MainToolBar.addAction(action_remove_all)
def __init__(self, parent=None): MdiWidget.__init__(self, parent) self.setupUi(self) self.current_index = None # this is used in onOperationContextMenu() to track item for menu # Set icons self.NewOperationBtn.setIcon(load_icon("new.png")) self.CopyOperationBtn.setIcon(load_icon("copy.png")) self.DeleteOperationBtn.setIcon(load_icon("delete.png")) # Operations view context menu self.contextMenu = QMenu(self.OperationsTableView) self.actionReconcile = QAction(load_icon("reconcile.png"), self.tr("Reconcile"), self) self.actionCopy = QAction(load_icon("copy.png"), self.tr("Copy"), self) self.actionDelete = QAction(load_icon("delete.png"), self.tr("Delete"), self) self.contextMenu.addAction(self.actionReconcile) self.contextMenu.addSeparator() self.contextMenu.addAction(self.actionCopy) self.contextMenu.addAction(self.actionDelete) # Customize UI configuration self.balances_model = BalancesModel(self.BalancesTableView) self.BalancesTableView.setModel(self.balances_model) self.balances_model.configureView() self.operations_model = OperationsModel(self.OperationsTableView) self.OperationsTableView.setModel(self.operations_model) self.operations_model.configureView() self.OperationsTableView.setContextMenuPolicy(Qt.CustomContextMenu) self.connect_signals_and_slots() self.NewOperationMenu = QMenu() for i in range(self.OperationsTabs.count()): if hasattr(self.OperationsTabs.widget(i), "isCustom"): self.OperationsTabs.widget(i).dbUpdated.connect(self.dbUpdated) self.OperationsTabs.widget(i).dbUpdated.connect( self.operations_model.refresh) self.NewOperationMenu.addAction( self.OperationsTabs.widget(i).name, partial(self.createOperation, i)) self.NewOperationBtn.setMenu(self.NewOperationMenu) # Setup balance and holdings parameters current_time = QDateTime.currentDateTime() current_time.setTimeSpec( Qt.UTC) # We use UTC everywhere so need to force TZ info self.BalanceDate.setDateTime(current_time) self.BalancesCurrencyCombo.setIndex( JalSettings().getValue('BaseCurrency')) self.OperationsTabs.setCurrentIndex(LedgerTransaction.NA) self.OperationsTableView.selectRow(0) self.DateRange.setCurrentIndex(0)
def _create_actions(self): # create config actions self.open_config = QAction("&Open") self.open_config.triggered.connect(self._handle_file_open) self.save_config = QAction("&Save") self.save_config.triggered.connect( lambda: self._handle_file_save(overwrite=True)) self.save_config_as = QAction("&Save As...") self.save_config_as.triggered.connect(self._handle_file_save)
def init_tray_icon(self): self.tray_icon_menu.addAction( QAction('设置', self, triggered=self.show_settings)) self.tray_icon_menu.addAction( QAction('关于', self, triggered=self.show_about)) self.tray_icon_menu.addAction(QAction('退出', self, triggered=self.close)) self.tray_icon.setIcon(QIcon(resource_path('resources/hope-h.png'))) self.tray_icon.setContextMenu(self.tray_icon_menu) self.tray_icon.show()
def __init__(self, base): TritonWidget.__init__(self, base) self.addOTP = None self.closeEvent = self.widgetDeleted self.setWindowTitle('TritonAuth') self.setBackgroundColor(self, Qt.white) self.menu = QMenuBar() self.addMenu = self.menu.addMenu('Add') self.authAction = QAction('Authenticator', self) self.authAction.triggered.connect(self.openAddOTP) self.steamAction = QAction('Steam', self) self.steamAction.triggered.connect(self.openAddSteam) self.addMenu.addAction(self.authAction) self.addMenu.addAction(self.steamAction) self.sortMenu = self.menu.addMenu('Sort') self.nameAction = QAction('Sort by name', self) self.nameAction.triggered.connect(self.sortByName) self.sortMenu.addAction(self.nameAction) self.exportMenu = self.menu.addMenu('Export') self.andOTPAction = QAction('Export to andOTP', self) self.andOTPAction.triggered.connect(self.exportToAndOTP) self.exportMenu.addAction(self.andOTPAction) self.widget = QWidget() self.widget.setContentsMargins(10, 10, 10, 10) self.scrollArea = QScrollArea() self.scrollArea.setFixedSize(400, 495) self.scrollArea.setWidgetResizable(True) self.scrollWidget = QWidget() self.scrollLayout = QVBoxLayout(self.scrollWidget) self.scrollLayout.setAlignment(Qt.AlignTop) self.createAccounts() self.scrollArea.setWidget(self.scrollWidget) self.widgetLayout = QVBoxLayout(self.widget) self.widgetLayout.addWidget(self.scrollArea) self.boxLayout = QVBoxLayout(self) self.boxLayout.setContentsMargins(0, 5, 0, 0) self.boxLayout.addWidget(self.menu) self.boxLayout.addWidget(self.widget) self.setFixedSize(self.sizeHint()) self.center() self.show()
def initUI(self): exitAction = QAction(QIcon("exit.svg"), 'Exit', self) exitAction.setShortcut("Ctrl+Q") exitAction.triggered.connect(self.close) self.toolbar = self.addToolBar("Exit") self.toolbar.addAction(exitAction) self.setGeometry(300, 300, 250, 150) self.setWindowTitle("Toolbar") self.show()
def add_WelcomeView_signal(self, old_view): self.view.select_book_signal.connect(self.toggle_view) self.view.display_status_signal.connect(self.display_status_message) self.view.set_current_book_signal.connect(self.set_current_book) action_logout = QAction('Logout', self) action_explore_bookmark = QAction('My Bookmark', self) action_logout.triggered.connect(self.logout_action_onclick) action_explore_bookmark.triggered.connect( lambda: self.toggle_view(UserBookmarkView)) self.MainToolBar.addAction(action_logout) self.MainToolBar.addAction(action_explore_bookmark)
def __init__(self): super(MainWindow, self).__init__() self.cameraInfo = QCameraInfo.defaultCamera() self.camera = QCamera(self.cameraInfo) self.camera.setCaptureMode(QCamera.CaptureStillImage) self.imageCapture = QCameraImageCapture(self.camera) self.imageCapture.imageCaptured.connect(self.imageCaptured) self.imageCapture.imageSaved.connect(self.imageSaved) self.currentPreview = QImage() toolBar = QToolBar() self.addToolBar(toolBar) fileMenu = self.menuBar().addMenu("&File") shutterIcon = QIcon( os.path.join(os.path.dirname(__file__), "shutter.svg")) self.takePictureAction = QAction(shutterIcon, "&Take Picture", self, shortcut="Ctrl+T", triggered=self.takePicture) self.takePictureAction.setToolTip("Take Picture") fileMenu.addAction(self.takePictureAction) toolBar.addAction(self.takePictureAction) exitAction = QAction(QIcon.fromTheme("application-exit"), "E&xit", self, shortcut="Ctrl+Q", triggered=self.close) fileMenu.addAction(exitAction) aboutMenu = self.menuBar().addMenu("&About") aboutQtAction = QAction("About &Qt", self, triggered=qApp.aboutQt) aboutMenu.addAction(aboutQtAction) self.tabWidget = QTabWidget() self.setCentralWidget(self.tabWidget) self.cameraViewfinder = QCameraViewfinder() self.camera.setViewfinder(self.cameraViewfinder) self.tabWidget.addTab(self.cameraViewfinder, "Viewfinder") if self.camera.status() != QCamera.UnavailableStatus: name = self.cameraInfo.description() self.setWindowTitle("PySide6 Camera Example (" + name + ")") self.statusBar().showMessage("Starting: '" + name + "'", 5000) self.camera.start() else: self.setWindowTitle("PySide6 Camera Example") self.takePictureAction.setEnabled(False) self.statusBar().showMessage("Camera unavailable", 5000)
def add_ChapterView_signal(self, old_view): self.view.display_status_signal.connect(self.display_status_message) self.view.select_chapter_signal.connect(self.toggle_view) self.view.set_current_chapter_signal.connect(self.set_current_chapter) action_back = QAction('Back', self) action_explore_bookmark = QAction('My Bookmark', self) action_back.triggered.connect(lambda: self.toggle_view(WelcomeView)) action_explore_bookmark.triggered.connect( lambda: self.toggle_view(BookBookmarkView)) self.MainToolBar.addAction(action_back) self.MainToolBar.addAction(action_explore_bookmark)
def add_menu(self, title, actions): menu = QMenu() menu.setTitle(title) for item in actions: icon, name, key, callback = item action = QAction(QIcon(icon), name, self) if key: action.setShortcut(key) if callback: action.triggered.connect(callback) menu.addAction(action) self.menuBar().addMenu(menu)
def __init__(self): QMainWindow.__init__(self) self.setWindowTitle("Tutorial") # Menu self.menu = self.menuBar() self.file_menu = self.menu.addMenu("File") # Exit QAction exit_action = QAction("Exit", self) exit_action.setShortcut("Ctrl+Q") self.file_menu.addAction(exit_action)
def _build_menus(self) -> None: self.menu = self.menuBar() self.m_file = self.menu.addMenu("File") self.m_edit = self.menu.addMenu("Edit") ta = self.add_texture_action = QAction("Add Texture", self) self.m_edit.addAction(ta) ta.triggered.connect(self._add_texture) ea = self.exit_action = QAction("Exit", self) ea.setShortcut("Ctrl+Q") self.m_file.addAction(ea)
def onHoldingsContextMenu(self, pos): index = self.HoldingsTableView.indexAt(pos) contextMenu = QMenu(self.HoldingsTableView) actionShowChart = QAction(text=self.tr("Show Price Chart"), parent=self.HoldingsTableView) actionShowChart.triggered.connect(partial(self.showPriceChart, index)) contextMenu.addAction(actionShowChart) actionEstimateTax = QAction(text=self.tr("Estimate Russian Tax"), parent=self.HoldingsTableView) actionEstimateTax.triggered.connect( partial(self.estimateRussianTax, index)) contextMenu.addAction(actionEstimateTax) contextMenu.popup(self.HoldingsTableView.viewport().mapToGlobal(pos))
def __init__(self, parent=None): QSystemTrayIcon.__init__(self, QIcon(resource_path("icons/logo.png")), parent) self.setVisible(True) self.setToolTip("SSD: Zextras Drive Desktop") menu = QMenu() self.show_option = QAction("Mostra") self.exit_option = QAction("Esci") menu.addAction(self.show_option) menu.addAction(self.exit_option) self.setContextMenu(menu)
def outputContextMenu(self, listview: QListView, pos: QPoint): current_model = listview.model() menu = QMenu() edit_action = QAction( "Edit clicked" if len(listview.selectedIndexes()) > 1 else "Edit", menu) edit_action.triggered.connect(self.editCurrentTarget) menu.addAction(edit_action) delete_action = QAction("Remove", menu) delete_action.triggered.connect(lambda: current_model.__delitem__( [i.row() for i in listview.selectedIndexes()])) menu.addAction(delete_action) selected_istemp = current_model[ listview.currentIndex().row()].temporary mark_temp_action = QAction("Mark temp", menu) mark_temp_action.setCheckable(True) mark_temp_action.setChecked(selected_istemp) mark_temp_action.triggered.connect(lambda: [ current_model[i.row()].switch_temporary(not selected_istemp) for i in listview.selectedIndexes() ]) menu.addAction(mark_temp_action) self.addTargetActions(menu) menu.exec_(listview.mapToGlobal(pos))
def create_menu_bar(self): menu_bar = self.menuBar() file_menu = QMenu('File', self) settings_action = QAction('Settings', self) settings_action.triggered.connect(self.open_settings) exit_action = QAction('Exit', self) exit_action.triggered.connect(self.close_event) file_menu.addAction(settings_action) file_menu.addAction(exit_action) help_menu = QMenu('Help', self) about_action = QAction('About', self) help_menu.addAction(about_action) menu_bar.addMenu(file_menu) menu_bar.addMenu(help_menu)
def __init__(self, widget): QMainWindow.__init__(self) self.setWindowTitle("Tutorial") # Menu self.menu = self.menuBar() self.file_menu = self.menu.addMenu("File") # Exit QAction exit_action = QAction("Exit", self) exit_action.setShortcut("Ctrl+Q") exit_action.triggered.connect(self.exit_app) self.file_menu.addAction(exit_action) self.setCentralWidget(widget)
def open_menu(self): menu = QMenu(self) add_group = QAction('Add Group', self) add_trigger = QAction('Add Trigger', self) add_group.triggered.connect(self.add_group) add_trigger.triggered.connect(self.add_trigger) menu.addAction(add_group) menu.addAction(add_trigger) menu.addSeparator() add_edit = QAction('Edit', self) add_delete = QAction('Delete', self) add_edit.triggered.connect(self.open_item) add_delete.triggered.connect(self.delete_item) menu.addAction(add_edit) menu.addAction(add_delete) menu.exec(QCursor().pos())
def __init__(self): super(MainWindow, self).__init__() self.ui = Ui_MainWindow() self.ui.setupUi(self) self.adf = "" self.bbdf = "" self.andf = "" self.ofile = "" self.ofileadd = "" self.ofilerem = "" self.aboutAction = QAction('&关于', self) self.aboutText = """程序版本:1.2\[email protected]\nAll rights reserved\n2021-01-20""" self.aboutAction.triggered.connect( lambda: self.showDialog(self.aboutText)) # 添加事件 self.ui.checkBox.stateChanged.connect(self.updateState) self.ui.pushButton_jwc.clicked.connect(lambda: self.chooseFile("all")) self.ui.pushButton_bb.clicked.connect(lambda: self.chooseFile("bb")) self.ui.pushButton_jwc_new.clicked.connect( lambda: self.chooseFile("all-new")) self.ui.pushButton_start.clicked.connect(self.saveFile) self.ui.pushButton_start.clicked.connect(self.genData) self.ui.menuBar.addAction(self.aboutAction) # 初始化日志窗口 self.logger(u"程序已就绪,请选择文件进行处理。") self.logger(textHelp) self.updateSb(u"请选择文件以运行程序")
def _build_menus(self) -> None: self.menu = self.menuBar() self.m_file = self.menu.addMenu("File") ea = self.exit_action = QAction("Exit", self) ea.setShortcut("Ctrl+Q") self.m_file.addAction(ea)
def __init__(self): super(MainWindow, self).__init__() self.setWindowTitle("My App") label = QLabel("Hello!") label.setAlignment(Qt.AlignCenter) self.setCentralWidget(label) toolbar = QToolBar("My main toolbar") self.addToolBar(toolbar) button_action = QAction("Your button", self) button_action.setStatusTip("This is your button") button_action.triggered.connect(self.onMyToolBarButtonClick) toolbar.addAction(button_action)
def __init__(self): super(MainWindow, self).__init__() toolBar = QToolBar() self.addToolBar(toolBar) fileMenu = self.menuBar().addMenu("&File") loadAction = QAction("Load...", self, shortcut="Ctrl+L", triggered=self.load) fileMenu.addAction(loadAction) toolBar.addAction(loadAction) exitAction = QAction("E&xit", self, shortcut="Ctrl+Q", triggered=self.close) fileMenu.addAction(exitAction) aboutMenu = self.menuBar().addMenu("&About") aboutQtAct = QAction("About &Qt", self, triggered=qApp.aboutQt) aboutMenu.addAction(aboutQtAct) self.axWidget = QAxWidget() self.setCentralWidget(self.axWidget)
def createAction(self, text, menu, slot): """ Helper function to save typing when populating menus with action. """ action = QAction(text, self) menu.addAction(action) action.triggered.connect(slot) return action