使用 pyQt 打开文件

发布于 2024-11-08 01:34:38 字数 247 浏览 0 评论 0原文

有一个按钮。
单击时,应使用默认文本编辑器打开文件 C:\file.txt(就像双击一样)。
在pyQt中可以吗?按钮被按下->文件已打开。
我只能用谷歌搜索对话框,但我不需要它们。

file = 'C:\file.txt'
widget.connect(button, QtCore.SIGNAL('clicked()'), ????)

怎样才能做到呢?

There is a button.
When it is clicked, file C:\file.txt should be opened with default text editor (as if it is double clicked).
Is it possible in pyQt? Button is pressed -> file is opened.
All I can google is just dialogs, but I don't need them.

file = 'C:\file.txt'
widget.connect(button, QtCore.SIGNAL('clicked()'), ????)

How it can be done?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

情仇皆在手 2024-11-15 01:34:38
def openFile(file):
    if sys.platform == 'linux2':
        subprocess.call(["xdg-open", file])
    else:
        os.startfile(file)

并将第二行编辑为:

widget.connect(button, QtCore.SIGNAL('clicked()'), openFile(file))

用于打开从 复制的文件的代码使用标准应用程序打开文件?

def openFile(file):
    if sys.platform == 'linux2':
        subprocess.call(["xdg-open", file])
    else:
        os.startfile(file)

And edit your 2nd line to:

widget.connect(button, QtCore.SIGNAL('clicked()'), openFile(file))

Code for opening file copied from How to open a file with the standard application?

沙与沫 2024-11-15 01:34:38

将此方法与 lambda 结合使用,轻松打开您想要的任何文件

self.ui.pushButton.clicked.connect(lambda:os.startfile(".\help.png"))

use this method with lambda and easily open any file you want

self.ui.pushButton.clicked.connect(lambda:os.startfile(".\help.png"))
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文