小编Sac*_*cki的帖子

PyQt/PySide QMainWindow - 在视图之间切换

你好 PyQt/PySide 专家,

我是 PyQt/PySide 和桌面应用程序开发的新手(我是 Web 开发人员)。

我有一个关于如何在 PyQt/PySide 应用程序中的不同视图之间导航的问题。

假设我的应用程序有视图(即像 Web 应用程序中的页面)“TEST1”(默认)和“TEST2”,我想通过单击相应的工具栏项在它们之间切换。

我以为每次单击工具栏按钮时我都可以使用 QMainWindow.setCentralWidget() 设置请求的视图,但这是在 PyQt/PySide 中的不同视图之间导航的正常方法吗?

为了您的参考,我将发布一个示例代码来说明上述内容:

#!/usr/bin/env python

import sys
from PySide import QtCore
from PySide.QtCore import *
from PySide.QtGui import *

class MainWindow(QMainWindow):

    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)

        # toolbar action 1
        self.test1_action = QAction(QIcon('icons/test1.png'), 'Test 1', self)
        self.test1_action.triggered.connect(self.show_test1_view)

        # toolbar action 2
        self.test2_action = QAction(QIcon('icons/test2.png'), 'Test 2', self)
        self.test2_action.triggered.connect(self.show_test2_view)

        # create toolbar
        self.toolbar = self.addToolBar('Actions')
        self.toolbar.addAction(self.test1_action)
        self.toolbar.addAction(self.test2_action)

        # default view is test1, so call …
Run Code Online (Sandbox Code Playgroud)

python pyqt pyside

4
推荐指数
1
解决办法
2763
查看次数

在Python中为变量分配"A或B"的最短路径?

你好Python专家,

我想知道,如果"A"为真(即存在),则是否有更短的方法为变量赋值"A",如果不存在则为"B".

假设我有:

mydict = {'a': 'apple', 'b': 'banana', 'c': 'Cherry'}
Run Code Online (Sandbox Code Playgroud)

然后,据我所知,在这个mydict var中分配一个不存在的值的最短(好,一行)方式是:

myvar = mydict['m'] if 'm' in mydict else 'Melon'
Run Code Online (Sandbox Code Playgroud)

但有没有更短的方法呢?

在Ruby中,我会这样:

myvar = mydict[:m] || 'Melon'
Run Code Online (Sandbox Code Playgroud)

就是想.提前致谢!

ruby python ternary-operator

0
推荐指数
1
解决办法
245
查看次数

标签 统计

python ×2

pyqt ×1

pyside ×1

ruby ×1

ternary-operator ×1