def renderStyle(self): self.qsst.srctext = self.editor.text() self.qsst.loadVars() self.qsst.convertQss() norand = self.actions["DisableQss"].isChecked() if (norand): qApp.setStyleSheet('') else: # self.setStyleSheet(self.qsst.qss)#tooltip透明等显示不出来 # try: # saved=os.path.exists(self.file) # lastcwd=os.getcwd() # if saved: # dir=os.path.dirname(self.file) # os.chdir(dir) path = os.path.dirname(self.file).replace("\\", "/") styleSheet = re.sub( r'url\([\s]*[\"\']*[\s]*([^\/\s][^:\s\"\'\)]*)[\s]*[\"\']*[\s]*\)', r'url("{}/\1")'.format(path).format(path), self.qsst.qss) # 不支持带空格路径 qApp.setStyleSheet(styleSheet) # self.statusbar.showMessage("")#不起作用 # except Exception: # self.statusbar.showMessage("qss parse failed") cstr = self.qsst.varDict.get("background", "") if cstr: try: c = QColor() c.setNamedColor(cstr) self.editor.setBackgroundColor(c) except Exception: pass
def loadQSS(theme) -> None: filename = ':/styles/{}.qss'.format(theme) if QFileInfo(filename).exists(): qssfile = QFile(filename) qssfile.open(QFile.ReadOnly | QFile.Text) content = QTextStream(qssfile).readAll() qApp.setStyleSheet(content)
def __init__(self, parent=None): """Initialize the components of the main window.""" super(Template, self).__init__(parent) self.resize(1024, 768) self.setWindowTitle('Template') window_icon = pkg_resources.resource_filename( 'demo-qt-inspector.images', 'ic_insert_drive_file_black_48dp_1x.png') self.setWindowIcon(QIcon(window_icon)) self.initUI() self.widget = QWidget() self.layout = QHBoxLayout(self.widget) print(qApp.styleSheet()) with open("theme.qss", mode="r") as theme_file: qApp.setStyleSheet(theme_file.read()) self.menu_bar = self.menuBar() self.about_dialog = AboutDialog() self.status_bar = self.statusBar() self.status_bar.showMessage('Ready') self.file_menu() self.help_menu()
def initMenu(self): menubar = self.menuBar() fileMenu = menubar.addMenu('&File') # File menu ## add record manually addRec = QMenu("Add Record", self) act = QAction('Add Car', self) act.setStatusTip('Add Car Manually') act.triggered.connect(self.addCar) addRec.addAction(act) act = QAction('Add Rule', self) act.setStatusTip('Add Rule Manually') act.triggered.connect(self.addRule) addRec.addAction(act) act = QAction('Add Violation', self) act.setStatusTip('Add Violation Manually') act.triggered.connect(self.addViolation) addRec.addAction(act) act = QAction('Add Camera', self) act.setStatusTip('Add Camera Manually') act.triggered.connect(self.addCamera) addRec.addAction(act) fileMenu.addMenu(addRec) # check archive record ( Create window and add button to restore them) act = QAction('&Archives', self) act.setStatusTip('Show Archived Records') act.triggered.connect(self.showArch) fileMenu.addAction(act) settingsMenu = menubar.addMenu('&Settings') themeMenu = QMenu("Themes", self) settingsMenu.addMenu(themeMenu) act = QAction('Dark', self) act.setStatusTip('Dark Theme') act.triggered.connect( lambda: qApp.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())) themeMenu.addAction(act) act = QAction('White', self) act.setStatusTip('White Theme') act.triggered.connect( lambda: qApp.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())) themeMenu.addAction(act) ## Add Exit fileMenu.addSeparator() act = QAction('&Exit', self) act.setShortcut('Ctrl+Q') act.setStatusTip('Exit application') act.triggered.connect(qApp.quit) fileMenu.addAction(act)
def setTheme(theme): """ 根据theme.json设置主题的qss (只改样式不加Titlebar) :param theme: :return: """ THEME_FILE = RESOURCE_DIR + '/theme.json' if os.path.isfile(THEME_FILE): path = THEME_FILE else: path = (os.path.split(__file__)[0] + '\\' + THEME_FILE).replace( '\\', '/') tDict = json.load(open(path)) # theme.json的theme的优先级比setTheme中的theme的优先级高 configTheme = tDict.get('theme') if configTheme is None or configTheme == '' or tDict.get( configTheme) is None: colorDict = tDict.get(theme) else: colorDict = tDict.get(configTheme) if colorDict is None: qss = simple_qss.getDefaultQss() else: qss = simple_qss.getQss(colorDict['fontLight'], colorDict['fontDark'], colorDict['normal'], colorDict['light'], colorDict['deep'], colorDict['disLight'], colorDict['disDark'], theme) qApp.setStyleSheet(qss)
def on_transparentStyle_clicked(self): styleSheet = QFile(":/files/transparent.qss") if not styleSheet.open(QIODevice.ReadOnly): print("Unable to open :/files/transparent.qss") return qApp.setStyleSheet(styleSheet.readAll().data().decode())
def skin_change(qss_file_name): qss_file = QFile(qss_file_name) qss_file.open(QFile.ReadOnly) # 转换成UTF-8编码格式 style_file = codecs.decode(qss_file.readAll(), 'utf-8') qApp.setStyleSheet(style_file) qss_file.close()
def inspector(qtbot, initial_qss): """ :type qtbot: pytestqt.plugin.QtBot """ qApp.setStyleSheet(initial_qss) inspector_ = StyleSheetInspector() qtbot.addWidget(inspector_) return inspector_
def answer_blue_skin_action_triggered(checked): """ :param checked: :return: """ with open("./resources/qss/blue.qss", "r", encoding="utf-8") as f: qss = f.read() qApp.setStyleSheet(qss) update_contents("preferences", "skin", "blue")
def load_stylesheet(): filename = ":/styles/light.qss" if QFileInfo(filename).exists(): qss_file = QFile(filename) qss_file.open(QFile.ReadOnly | QFile.Text) content = QTextStream(qss_file).readAll() qApp.setStyleSheet(content) else: logging.error(f"Unable to read light.qss file from {filename}")
def apply_style(style_name): if style_name == 'LiSP': qApp.setStyleSheet(QLiSPTheme) # Change link color palette = qApp.palette() palette.setColor(QPalette.Link, QColor(65, 155, 230)) palette.setColor(QPalette.LinkVisited, QColor(43, 103, 153)) qApp.setPalette(palette) else: qApp.setStyleSheet('') qApp.setStyle(QStyleFactory.create(style_name))
def loadTheme(self, theme=None): ''' Load given theme and save to settings file ''' if theme: theme_path = os.path.join(RESOURCES_DIR, f'stylesheet_{theme}.css') with open(theme_path, 'rt') as f: qApp.setStyleSheet(f.read()) else: qApp.setStyleSheet(None) self.settings['Theme'] = theme self.saveSettings()
def applyStyleSheet(self, stateless=False): """ Apply style sheet changes in running app. :param bool stateless: If true, style sheet state tape isn't updated. """ self.style_sheet = self.style_text_edit.toPlainText() qApp.setStyleSheet(self.style_sheet) if not stateless: if self.tape_pos + 1 < len(self.tape): self.tape = self.tape[:self.tape_pos + 1] self.tape.append(self.style_sheet) self.tape_pos += 1 self.apply_button.setEnabled(False)
def apply_qss(self): """ """ css_data = SKIN_QSS if self.theme_name and self.css_name: self.css_file = self.asset_path / self.theme_name / self.css_name try: if self.css_file.is_file(): with self.css_file.open(mode="r", encoding="utf8") as inFile: css_data += inFile.read() except Exception as e: LOG.error(f"Could not load theme CSS file {e}") return qApp.setStyleSheet(css_data)
def apply_style(name): """Load a style given its name.""" style = LiSPStyles.get(name.title()) if isinstance(style, Style): if style.has_py: module = __package__ + '.' + os.path.basename( style.path) + '.style' __load_py_style(module) if style.has_qss: __load_qss_style(os.path.join(style.path, 'style.qss')) else: qApp.setStyleSheet('') qApp.setStyle(QStyleFactory.create(name))
def loadQSS(theme, devmode: bool = False) -> str: if devmode: filename = os.path.join( QFileInfo(__file__).absolutePath(), 'vidcutter/styles/%s.qss' % theme) else: filename = ':/styles/%s.qss' % theme if QFileInfo(filename).exists(): qssfile = QFile(filename) qssfile.open(QFile.ReadOnly | QFile.Text) content = QTextStream(qssfile).readAll() if sys.platform == 'darwin' and theme == 'dark': content += 'QComboBox, QHeaderView::section, QMenu::item, QMenu::item:selected { color: #444; }' qApp.setStyleSheet(content) return content
def setUI(cls, mainWindow, pluginDict): cls._mainWindow = mainWindow cls._pluginDict = pluginDict cls._prePlugin = None #设置环境变量 dirname = pathlib.Path(PyQt5.__file__).parent plugin_path = dirname.joinpath("Qt5", "plugins", "platforms") os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = str(plugin_path) currentWorkDir = pathlib.Path.cwd() cls._currentWorkDir = str(currentWorkDir) #加载黑色主题 darkStylesheet = qdarkstyle.load_stylesheet_pyqt5() qApp.setStyleSheet(darkStylesheet) #加载UI组件 cls._mainWindowUI = Ui_MainWindow() cls._mainWindowUI.setupUi(mainWindow) cls._mainWindow.setWindowTitle('SolidPhysVisualization') cls._mainWindow.setWindowIcon(QIcon(":ico/icon.ico")) cls._mainWindowUI.treeWidget.setRootIsDecorated(False) #加载插件 cls._showPlugin() #加载菜单 #文件菜单 fileMenu = cls._mainWindowUI.menubar.addMenu("文件") exitAction = QAction("退出", cls._mainWindow) exitAction.setStatusTip("退出程序") exitAction.triggered.connect(qApp.exit) fileMenu.addAction(exitAction) #插件菜单 pluginMenu = cls._mainWindowUI.menubar.addMenu("插件") updatePluginsAction = QAction("添加/更新插件", cls._mainWindow) updatePluginsAction.setStatusTip("选择插件并自动更新或者添加") updatePluginsAction.triggered.connect(cls._updatePluginsHandle) pluginMenu.addAction(updatePluginsAction) deletePluginsAction = QAction("卸载插件", cls._mainWindow) deletePluginsAction.setStatusTip("卸载已经安装的插件") deletePluginsAction.triggered.connect(cls._deletePluginsHandle) pluginMenu.addAction(deletePluginsAction) helpPluginsAction = QAction("查看帮助", cls._mainWindow) helpPluginsAction.setStatusTip("查看所有插件的帮助信息") helpPluginsAction.triggered.connect(cls._helpPluginsHandle) pluginMenu.addAction(helpPluginsAction) #关于菜单 aboutMenu = cls._mainWindowUI.menubar.addMenu("关于") aboutAction = QAction("关于本程序", cls._mainWindow) aboutAction.setStatusTip("查看主程序的相关信息") aboutAction.triggered.connect(cls._aboutHandle) aboutMenu.addAction(aboutAction)
def renderStyle(self): self.qsst.srctext = self.editor.text() self.qsst.loadVars() self.qsst.convertQss() norand = self.actions["DisableQss"].isChecked() if norand: qApp.setStyleSheet('') else: # self.setStyleSheet(self.qsst.qss)#tooltip透明等显示不出来 # try: # saved=os.path.exists(self.file) # lastcwd=os.getcwd() # if saved: # dir=os.path.dirname(self.file) # os.chdir(dir) path = os.path.dirname(self.file).replace("\\", "/") styleSheet = re.sub( r'url\([\s]*[\"\']?[\s]*([^\s\/:\"\'\)]+)[\s]*[\"\']?[\s]*\)', r'url("{}/\1")'.format(path).format(path), self.qsst.qss) # 不支持带空格路径 if os.path.exists(self.file): name, _ = os.path.splitext(self.file) res = name + ".py" resp = os.path.dirname(res) resn, _ = os.path.splitext(os.path.basename(res)) if os.path.exists(res): if resp not in sys.path: sys.path.appendToChild(resp) try: __import__(resn) except BaseException: pass qApp.setStyleSheet(styleSheet) # self.statusbar.showMessage("")#不起作用 # except Exception: # self.statusbar.showMessage("qss parse failed") cstr = self.qsst.varDict.get("background", "") if cstr: try: c = QColor() c.setNamedColor(cstr) self.editor.setBackgroundColor(c) except Exception: print("set background clolor exception.")
def apply_style(name): """Load a style given its name.""" style = LiSPStyles.get(name.title()) if isinstance(style, Style): if style.has_py: __load_py_style(os.path.join(style.path, 'style.py')) if style.has_qss: __load_qss_style(os.path.join(style.path, 'style.qss')) # Change link color palette = qApp.palette() palette.setColor(QPalette.Link, QColor(65, 155, 230)) palette.setColor(QPalette.LinkVisited, QColor(43, 103, 153)) qApp.setPalette(palette) else: qApp.setStyleSheet('') qApp.setStyle(QStyleFactory.create(name))
def initMenu(self): menubar = self.menuBar() fileMenu = menubar.addMenu('&File') # File menu act = QAction('Load from json', self) act.setStatusTip('Load from saved JSON file') # act.triggered.connect(self.addCar) fileMenu.addAction(act) act = QAction('About', self) act.setStatusTip('Show Gulu') # act.triggered.connect(self.showArch) fileMenu.addAction(act) settingsMenu = menubar.addMenu('&Settings') themeMenu = QMenu("Themes", self) settingsMenu.addMenu(themeMenu) act = QAction('Dark', self) act.setStatusTip('Dark Theme') act.triggered.connect( lambda: qApp.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())) themeMenu.addAction(act) act = QAction('White', self) act.setStatusTip('White Theme') act.triggered.connect( lambda: qApp.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())) themeMenu.addAction(act) ## Add Exit fileMenu.addSeparator() act = QAction('&Exit', self) act.setShortcut('Ctrl+Q') act.setStatusTip('Exit application') act.triggered.connect(qApp.quit) fileMenu.addAction(act)
def init(self): self.resize(500, 500) self.setWindowTitle("微信公众号:学点编程吧") line = QLineEdit(self) line.move(100, 120) check = QCheckBox("选我", self) check.move(300, 120) line.setStyleSheet("background: yellow") # 背景红色 check.setStyleSheet("color: red") # 样式红色 bt = QPushButton("按钮", self) bt.move(100, 180) rt = QRadioButton("单选", self) rt.move(200, 180) qcom = QComboBox(self) qcom.move(100, 250) lists = ["apple", "banana", "pear", "peach"] qcom.addItems(lists) groupbox = QGroupBox("分组", self) bt1 = QPushButton("按钮1", self) bt2 = QPushButton("按钮2", self) vbox = QVBoxLayout(self) vbox.addWidget(bt1) vbox.addWidget(bt2) groupbox.setLayout(vbox) qApp.setStyleSheet( "QGroupBox, QGroupBox * { color: red; } ") # 全局按钮组红色 with codecs.open("xx.qss", "r") as f: style = f.read() self.setStyleSheet(style) # 读取qss样式,并设置 self.show()
def loadTheme(self): logger.debug("Loading theme files") # CSS File cssData = "" try: if path.isfile(self.cssFile): with open(self.cssFile, mode="r") as inFile: cssData = inFile.read() except Exception as e: logger.error("Could not load theme css file") return False # Config File confParser = configparser.ConfigParser() try: confParser.read_file(open(self.confFile)) except Exception as e: logger.error("Could not load theme settings from: %s" % self.confFile) return False ## Main cnfSec = "Main" if confParser.has_section(cnfSec): self.themeName = self._parseLine(confParser, cnfSec, "name", "") self.themeAuthor = self._parseLine(confParser, cnfSec, "author", "") self.themeCredit = self._parseLine(confParser, cnfSec, "credit", "") self.themeUrl = self._parseLine(confParser, cnfSec, "url", "") ## Palette cnfSec = "Palette" if confParser.has_section(cnfSec): self._setPalette(confParser, cnfSec, "window", QPalette.Window) self._setPalette(confParser, cnfSec, "windowtext", QPalette.WindowText) self._setPalette(confParser, cnfSec, "base", QPalette.Base) self._setPalette(confParser, cnfSec, "alternatebase", QPalette.AlternateBase) self._setPalette(confParser, cnfSec, "text", QPalette.Text) self._setPalette(confParser, cnfSec, "tooltipbase", QPalette.ToolTipBase) self._setPalette(confParser, cnfSec, "tooltiptext", QPalette.ToolTipText) self._setPalette(confParser, cnfSec, "button", QPalette.Button) self._setPalette(confParser, cnfSec, "buttontext", QPalette.ButtonText) self._setPalette(confParser, cnfSec, "brighttext", QPalette.BrightText) self._setPalette(confParser, cnfSec, "highlight", QPalette.Highlight) self._setPalette(confParser, cnfSec, "highlightedtext", QPalette.HighlightedText) self._setPalette(confParser, cnfSec, "link", QPalette.Link) self._setPalette(confParser, cnfSec, "linkvisited", QPalette.LinkVisited) ## GUI cnfSec = "GUI" if confParser.has_section(cnfSec): self.treeWCount = self._loadColour(confParser, cnfSec, "treewordcount") self.statNone = self._loadColour(confParser, cnfSec, "statusnone") self.statUnsaved = self._loadColour(confParser, cnfSec, "statusunsaved") self.statSaved = self._loadColour(confParser, cnfSec, "statussaved") # Apply Styles qApp.setStyleSheet(cssData) qApp.setPalette(self.guiPalette) logger.info("Loaded theme '%s'" % self.guiTheme) return True
def load_stylesheet(self): filename = ":/themes/light.qss" styles = styles_from_file(filename) qApp.setStyleSheet(styles) if styles else self.log_error(filename)
def __load_qss_theme(qss_file): with open(qss_file, mode='r', encoding='utf-8') as f: style = f.read() qApp.setStyleSheet(style)
def load_stylesheet(qssfile: str) -> None: if QFileInfo(qssfile).exists(): qss = QFile(qssfile) qss.open(QFile.ReadOnly | QFile.Text) qApp.setStyleSheet(QTextStream(qss).readAll())
def unuseQss(self, unuse): if unuse: qApp.setStyleSheet('') else: self.renderStyle() self.loadColorPanel()
def createStyleQss(self): file = open('style.css','r') style = file.read() qApp.setStyleSheet(style) file.close()
def updateStyle(self): styleSheet = self.textbox.toPlainText() qApp.setStyleSheet(styleSheet) # qApp is a global reference to your running QApplication, it's in PyQt5.QtWidgets
def __init__(self, socket): QMainWindow.__init__(self) Login.socket = socket qApp.setStyleSheet( "QMainWindow, QDialog { background-color: rgb(255, 255, 255) }")
def loadTheme(self): """Load the currently specified GUI theme. """ logger.debug("Loading theme files") logger.debug("System icon theme is '%s'" % str(QIcon.themeName())) # CSS File cssData = "" try: if os.path.isfile(self.cssFile): with open(self.cssFile, mode="r", encoding="utf8") as inFile: cssData = inFile.read() except Exception: logger.error("Could not load theme css file") nw.logException() return False # Config File confParser = configparser.ConfigParser() try: with open(self.confFile, mode="r", encoding="utf8") as inFile: confParser.read_file(inFile) except Exception: logger.error("Could not load theme settings from: %s" % self.confFile) nw.logException() return False ## Main cnfSec = "Main" if confParser.has_section(cnfSec): self.themeName = self._parseLine(confParser, cnfSec, "name", "") self.themeDescription = self._parseLine(confParser, cnfSec, "description", "N/A") self.themeAuthor = self._parseLine(confParser, cnfSec, "author", "N/A") self.themeCredit = self._parseLine(confParser, cnfSec, "credit", "N/A") self.themeUrl = self._parseLine(confParser, cnfSec, "url", "") self.themeLicense = self._parseLine(confParser, cnfSec, "license", "N/A") self.themeLicenseUrl = self._parseLine(confParser, cnfSec, "licenseurl", "") ## Palette cnfSec = "Palette" if confParser.has_section(cnfSec): self._setPalette(confParser, cnfSec, "window", QPalette.Window) self._setPalette(confParser, cnfSec, "windowtext", QPalette.WindowText) self._setPalette(confParser, cnfSec, "base", QPalette.Base) self._setPalette(confParser, cnfSec, "alternatebase", QPalette.AlternateBase) self._setPalette(confParser, cnfSec, "text", QPalette.Text) self._setPalette(confParser, cnfSec, "tooltipbase", QPalette.ToolTipBase) self._setPalette(confParser, cnfSec, "tooltiptext", QPalette.ToolTipText) self._setPalette(confParser, cnfSec, "button", QPalette.Button) self._setPalette(confParser, cnfSec, "buttontext", QPalette.ButtonText) self._setPalette(confParser, cnfSec, "brighttext", QPalette.BrightText) self._setPalette(confParser, cnfSec, "highlight", QPalette.Highlight) self._setPalette(confParser, cnfSec, "highlightedtext", QPalette.HighlightedText) self._setPalette(confParser, cnfSec, "link", QPalette.Link) self._setPalette(confParser, cnfSec, "linkvisited", QPalette.LinkVisited) ## GUI cnfSec = "GUI" if confParser.has_section(cnfSec): self.statNone = self._loadColour(confParser, cnfSec, "statusnone") self.statUnsaved = self._loadColour(confParser, cnfSec, "statusunsaved") self.statSaved = self._loadColour(confParser, cnfSec, "statussaved") # Apply Styles qApp.setStyleSheet(cssData) qApp.setPalette(self.guiPalette) logger.info("Loaded theme '%s'" % self.guiTheme) return True
def setupUi(self, MainWindow, init_kr): self.bian=[] self.ans_path=[] self.ans_path2=[] self.i1=0 self.i2=0 self.flag1=1 self.flag2=1 MainWindow.setObjectName("MainWindow") MainWindow.setEnabled(True) MainWindow.resize(1920, 1000) self.new_kr = init_kr self.new_kr.init_graph() with open("Qobject.qss", "r") as f: qApp.setStyleSheet(f.read()) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") # 左边的点和边 listQwidget self.widget = QtWidgets.QWidget(self.centralwidget) self.widget.setGeometry(QtCore.QRect(30, 190, 291, 651)) self.widget.setObjectName("widget") self.gridLayout = QtWidgets.QGridLayout(self.widget) self.gridLayout.setContentsMargins(0, 0, 0, 0) self.gridLayout.setObjectName("gridLayout") self.verticalLayout = QtWidgets.QVBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.label3 = QtWidgets.QLabel(self.widget) self.label3.setObjectName("label") self.verticalLayout.addWidget(self.label3) self.listWidget = QtWidgets.QListWidget(self.widget) self.listWidget.setObjectName("listWidget") self.verticalLayout.addWidget(self.listWidget) self.gridLayout.addLayout(self.verticalLayout, 0, 0, 1, 1) self.verticalLayout_2 = QtWidgets.QVBoxLayout() self.verticalLayout_2.setObjectName("verticalLayout_2") self.label_4 = QtWidgets.QLabel(self.widget) self.label_4.setObjectName("label_2") self.verticalLayout_2.addWidget(self.label_4) self.listWidget_2 = QtWidgets.QListWidget(self.widget) self.listWidget_2.setObjectName("listWidget_2") self.verticalLayout_2.addWidget(self.listWidget_2) self.gridLayout.addLayout(self.verticalLayout_2, 0, 1, 1, 1) #上面的插入模块 self.gridLayoutWidget = QtWidgets.QWidget(self.centralwidget) self.gridLayoutWidget.setGeometry(QtCore.QRect(40, 30, 441, 51)) self.gridLayoutWidget.setObjectName("gridLayoutWidget") self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget) self.gridLayout.setContentsMargins(0, 0, 0, 0) self.gridLayout.setObjectName("gridLayout") self.lineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget) self.lineEdit.setObjectName("lineEdit") self.gridLayout.addWidget(self.lineEdit, 2, 0, 1, 1) self.label = QtWidgets.QLabel(self.gridLayoutWidget) self.label.setObjectName("label") self.gridLayout.addWidget(self.label, 0, 0, 1, 1) self.lineEdit_3 = QtWidgets.QLineEdit(self.gridLayoutWidget) self.lineEdit_3.setObjectName("lineEdit_3") self.gridLayout.addWidget(self.lineEdit_3, 2, 2, 1, 1) self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget) self.label_2.setObjectName("label_2") self.gridLayout.addWidget(self.label_2, 0, 1, 1, 1) self.lineEdit_2 = QtWidgets.QLineEdit(self.gridLayoutWidget) self.lineEdit_2.setObjectName("lineEdit_2") self.gridLayout.addWidget(self.lineEdit_2, 2, 1, 1, 1) self.label_3 = QtWidgets.QLabel(self.gridLayoutWidget) self.label_3.setObjectName("label_3") self.gridLayout.addWidget(self.label_3, 0, 2, 1, 1) self.horizontalLayoutWidget = QtWidgets.QWidget(self.centralwidget) self.horizontalLayoutWidget.setGeometry(QtCore.QRect(40, 90, 441, 51)) self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget") self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget) self.horizontalLayout.setContentsMargins(0, 0, 0, 0) self.horizontalLayout.setObjectName("horizontalLayout") self.pushButton_5 = QtWidgets.QPushButton(self.horizontalLayoutWidget) self.pushButton_5.setObjectName("pushButton_5") self.horizontalLayout.addWidget(self.pushButton_5) #右边的一列按钮操作 self.widget = QtWidgets.QWidget(MainWindow) self.widget.setGeometry(QtCore.QRect(400, 190, 191, 651)) self.widget.setObjectName("widget") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.widget) self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) self.verticalLayout_3.setObjectName("verticalLayout_3") self.pushButton = QtWidgets.QPushButton(self.widget) self.pushButton.setObjectName("pushButton") self.verticalLayout_3.addWidget(self.pushButton) self.pushButton_2 = QtWidgets.QPushButton(self.widget) self.pushButton_2.setObjectName("pushButton_2") self.verticalLayout_3.addWidget(self.pushButton_2) self.pushButton_3 = QtWidgets.QPushButton(self.widget) self.pushButton_3.setObjectName("pushButton_3") self.verticalLayout_3.addWidget(self.pushButton_3) self.pushButton_9 = QtWidgets.QPushButton(self.widget) self.pushButton_9.setObjectName("pushButton_9") self.verticalLayout_3.addWidget(self.pushButton_9) self.pushButton_4 = QtWidgets.QPushButton(self.widget) self.pushButton_4.setObjectName("pushButton_4") self.verticalLayout_3.addWidget(self.pushButton_4) self.pushButton_7 = QtWidgets.QPushButton(self.widget) self.pushButton_7.setObjectName("pushButton_7") self.verticalLayout_3.addWidget(self.pushButton_7) # 这个是prim 的逐条显示增加 self.pushButton_10 = QtWidgets.QPushButton(self.widget) self.pushButton_10.setObjectName("pushButton_10") self.verticalLayout_3.addWidget(self.pushButton_10) #逐条减少 self.pushButton_13= QtWidgets.QPushButton(self.widget) self.pushButton_13.setObjectName("pushButton_13") self.verticalLayout_3.addWidget(self.pushButton_13) self.pushButton_8 = QtWidgets.QPushButton(self.widget) self.pushButton_8.setObjectName("pushButton_8") self.verticalLayout_3.addWidget(self.pushButton_8) # 这个是克鲁斯卡尔 逐条显示增加 self.pushButton_11 = QtWidgets.QPushButton(self.widget) self.pushButton_11.setObjectName("pushButton_11") self.verticalLayout_3.addWidget(self.pushButton_11) #逐条减少 self.pushButton_12 = QtWidgets.QPushButton(self.widget) self.pushButton_12.setObjectName("pushButton_12") self.verticalLayout_3.addWidget(self.pushButton_12) self.pushButton_6 = QtWidgets.QPushButton(self.widget) self.pushButton_6.setObjectName("pushButton_6") self.verticalLayout_3.addWidget(self.pushButton_6) MainWindow.setCentralWidget(self.centralwidget) #这个是最下面最小生成树的代价 self.widget1 = QtWidgets.QWidget(MainWindow) self.widget1.setGeometry(QtCore.QRect(30, 890, 261, 41)) self.widget1.setObjectName("widget1") self.horizontalLayout = QtWidgets.QHBoxLayout(self.widget1) self.horizontalLayout.setContentsMargins(0, 0, 0, 0) self.horizontalLayout.setObjectName("horizontalLayout") self.label_5 = QtWidgets.QLabel(self.widget1) self.label_5.setObjectName("label_5") self.horizontalLayout.addWidget(self.label_5) self.textBrowser = QtWidgets.QTextBrowser(self.widget1) self.textBrowser.setObjectName("textBrowser") self.horizontalLayout.addWidget(self.textBrowser) self.widget2 = QtWidgets.QWidget(MainWindow) self.widget2.setGeometry(QtCore.QRect(300, 890, 261, 41)) self.widget2.setObjectName("widget2") self.horizontalLayout2 = QtWidgets.QHBoxLayout(self.widget2) self.horizontalLayout2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout2.setObjectName("horizontalLayout2") self.label_6 = QtWidgets.QLabel(self.widget2) self.label_6.setObjectName("label_6") self.horizontalLayout2.addWidget(self.label_6) self.textBrowser2 = QtWidgets.QTextBrowser(self.widget2) self.textBrowser2.setObjectName("textBrowser2") self.horizontalLayout2.addWidget(self.textBrowser2) #右边的浏览器加载 html 文件 self.stackedWidget = QtWidgets.QStackedWidget(MainWindow) self.stackedWidget.setFrameShape(QtWidgets.QFrame.Box) self.stackedWidget.setObjectName("stackedWidget") self.stackedWidget.setGeometry(600, 10, 1300, 950) self.browser = QWebEngineView(self.stackedWidget) self.browser.setGeometry(0, 0, 1300, 950) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow) with open(self.new_kr.file, 'r', True, 'utf-8') as f: f.readline() f.readline() for line in f.readlines(): list= line.replace('\n', '') item=QListWidgetItem() item.setText(list) self.listWidget_2.addItem(item) for i in range(len(self.new_kr.place_name)): item=QListWidgetItem() item.setText(self.new_kr.place_name[i]) self.listWidget.addItem(item) self.pyecharts_update12(1,0,0,0,0,0,0) #插入操作 self.pushButton_5.clicked.connect(self.update1) #删除操作 self.listWidget.clicked.connect(self.check) self.pushButton.clicked.connect(self.remove) self.listWidget_2.clicked.connect(self.check1) self.pushButton_2.clicked.connect(self.remove1) # 进行写文件 self.pushButton_6.clicked.connect(self.write) #prim 算法 self.pushButton_3.clicked.connect(self.prim) #克鲁斯卡尔算法 self.pushButton_9.clicked.connect(self.Kruskal) # 可视化 self.pushButton_4.clicked.connect(lambda: (self.pyecharts_update12(1,0,0,0,0,0,0))) #prim 路径 self.pushButton_7.clicked.connect(lambda:(self.pyecharts_update12(0,1,0,0,0,0,0))) # prim 增加边 self.pushButton_10.clicked.connect(lambda: (self.pyecharts_update12(0,0,1,0,0,0,0))) # prim 减少边 self.pushButton_13.clicked.connect(lambda: (self.pyecharts_update12(0,0,0,1,0,0,0))) #克鲁斯卡尔 路径 self.pushButton_8.clicked.connect(lambda:(self.pyecharts_update12(0,0,0,0,1,0,0))) #克鲁斯卡尔增加边 self.pushButton_11.clicked.connect(lambda: (self.pyecharts_update12(0,0,0,0,0,1,0))) #克鲁斯卡尔减少边 self.pushButton_12.clicked.connect(lambda: (self.pyecharts_update12(0,0,0,0,0,0,1)))
def setAppGreenStyle(): """ 一键设置,见上面的示例 :return: void """ qApp.setStyleSheet(getGreenStyleTitleWindowQss())
def __load_qss_style(path): """Read and load the stylesheet file.""" with open(path, mode='r', encoding='utf-8') as f: style = f.read() qApp.setStyleSheet(style)