我使用PyQt已经有一段时间了,并且在整个使用过程中,一直有相当一致的编程模式。
有什么办法可以在PySide中做类似的事情吗?我已经通读了文档和示例,而我能找到的最接近的东西是一个计算器示例,该示例将.ui文件预先渲染为python代码,这是在PyQt中执行该操作的超老方法(为什么将其烘焙为python什么时候可以解析用户界面?)
我正是用PySide做到的。:)
您可以使用此https://gist.github.com/cpbotha/1b42a20c8f3eb9bb7cb8(塞巴斯蒂安·威斯纳的原著位于https://github.com/lunaryorn/snippets/blob/master/qt4/designer/pyside_dynamic.py,但已经消失了)
-它将覆盖PySide.QtUiTools.QUiLoader并提供一个新loadUi()
方法,以便您可以执行此操作:
class MyMainWindow(QMainWindow):
def __init__(self, parent=None):
QMainWindow.__init__(self, parent)
loadUi('mainwindow.ui', self)
实例化MyMainWindow时,它将具有您使用Qt Designer设计的UI。
如果还需要使用自定义窗口小部件(在Qt Designer中为“ Promote
To”),请参见以下答案:
从理论上讲,要使您的自定义小部件起作用,您只需要调用:
loader.registerCustomWidget(TimelinePane)
在调用loader.load()之前。在您的情况下,您需要添加相关的导入语句:
from timeline_pane import TimelinePane
但是,我只是在Ubuntu 12.04 x86_64上使用PySide 1.1.2进行了测试,这导致了段错误。YMMV,所以请测试。
我最终实现了这种解决方法:http : //www.mail-archive.com/pyside@qt-project.org/msg00306.html
简而言之,请覆盖QUiLoader的creteWidget()方法,如果该小部件的class_name不在self.availableWidgets()中,请根据已添加的customWidgets实例变量自行实例化它。
顺便说一句,您还可以在Qt Designer中使用右键单击“ Promote To”功能,而不是直接编辑ui文件。
问题内容: 我正在寻找一个简单的示例,该示例如何将QtDesigner生成的.ui文件直接加载到Python应用程序中。 我只是想避免使用pyuic4。 问题答案: 与PyQt不同,PySide已实现QUiLoader类以直接读取.ui文件。在链接的文档中,
问题内容: 我有一堆.RData时间序列文件,想直接将它们加载到Python中,而无需先将文件转换为其他扩展名(例如.csv)。对实现此目标的最佳方法有何想法? 问题答案: 人们在R-help和R-dev列表上问这种事情,通常的答案是代码是文件格式的文档。因此,任何其他语言的任何其他实现都是 hard ++ 。 我认为唯一合理的方法是安装RPy2并从中使用R的功能,并随即转换为适当的python对
问题内容: 我正在使用Selenium WebDriver尝试将外部javascript文件插入DOM中,而不是将整个内容键入到executeScript中。 看起来好像已将节点正确放置到DOM中,但是随后它只是忽略了源代码,即,所述源js文件上的函数未运行。 这是我的代码: 我链接到的javascript文件的代码是 我已将js文件放在本地主机上,使用file:///进行了调用,并在外部服务器上
我使用Selenium WebDriver尝试将外部javascript文件插入到DOM中,而不是将整个文件输入到Executescript中。 它看起来像是正确地将节点放入了DOM,但它只是忽略了源,即源js文件上的函数不运行。 下面是我的代码: 我链接到的javascript文件的代码是 我将js文件放在本地主机上,使用file:///调用它,并在外部服务器上进行了尝试。没有骰子。 我还尝试了
问题内容: 我正在尝试从外部文件加载HTML并将文件的内容插入。 当我运行该函数时,它将HTML插入所有正文中,这是不够的。 我的代码: --------------------------> HTML <--------------------- ----- --------------------------> CSS <--------------------- ----- --------
问题内容: 我试图从文件选择器中选择图像文件后立即显示它。文件选择器仅限于.png和.jpg文件,所选文件存储在File类型的变量中。为此,我已经设置了ImageView,并且我希望使用此新文件设置图像,唯一的问题是文件类型不是图像。 如何做到这一点?到目前为止的代码… 问题答案: 您可以简单地用 然后将其放在: 其他构造函数提供了对加载图像所需资源的更多控制。如果要强制将图像设置为特定大小,则可
我正在尝试将此文件加载到我的webview中,但它没有加载 文件路径类似于 /数据/用户/0/com。xyzapp。应用程序/缓存/临时文件。docx//这是GetPathh 下面是我的代码 第一项活动:- 第二项活动:- 如果我使用Action\u view 我因为“E/UncaughtException:android”而崩溃。操作系统。FileUriExposedException:file
我有一个nio通道,我的客户机应该从服务器计算机加载一个类文件。它们在相同的IP范围内。我有两个在服务器和客户机上通用的接口。以及在服务器计算机上实现接口的类。我在我的客户机上使用以下代码,但运行时将出现ClassNotFoundException。 这种情况下类加载的完整过程是什么?