我正在尝试使用QProcess并将标准输出读取到由按钮启动的QTextEdit.我该如何适应this example?我必须为QProcess调用一个单独的类吗?

from PyQt4.QtGui import *

from PyQt4.QtCore import *

import sys

class MyQProcess(QProcess):

def __init__(self):

#Call base class method

QProcess.__init__(self)

#Create an instance variable here (of type QTextEdit)

self.edit = QTextEdit()

self.edit.setWindowTitle("QTextEdit Standard Output Redirection")

self.edit.show()

#Define Slot Here

@pyqtSlot()

def readStdOutput(self):

self.edit.append(QString(self.readAllStandardOutput()))

def main():

app = QApplication(sys.argv)

qProcess = MyQProcess()

qProcess.setProcessChannelMode(QProcess.MergedChannels);

qProcess.start("ldconfig -v")

QObject.connect(qProcess,SIGNAL("readyReadStandardOutput()"),qProcess,SLOT("readStdOutput()"));

return app.exec_()

if __name__ == '__main__':

main()

解决方法:

使用QPushButton制作一个按钮.

使用QPushButton.clicked.connect绑定事件.

例如:

import sys

from PyQt4.QtGui import *

from PyQt4.QtCore import *

class MyWindow(QWidget):

def __init__(self):

QWidget.__init__(self)

self.edit = QTextEdit()

self.edit.setWindowTitle("QTextEdit Standard Output Redirection")

self.button = QPushButton('Run ldconfig')

self.button.clicked.connect(self.onClick)

layout = QVBoxLayout(self)

layout.addWidget(self.edit)

layout.addWidget(self.button)

@pyqtSlot()

def readStdOutput(self):

self.edit.append(QString(self.proc.readAllStandardOutput()))

def onClick(self):

self.proc = QProcess()

self.proc.start("echo hello")

self.proc.setProcessChannelMode(QProcess.MergedChannels);

QObject.connect(self.proc, SIGNAL("readyReadStandardOutput()"), self, SLOT("readStdOutput()"));

def main():

app = QApplication(sys.argv)

win = MyWindow()

win.show()

return app.exec_()

if __name__ == '__main__':

main()

标签:qprocess,pyqt,python

python怎么添加按钮_在Python QProcess示例中添加按钮和单独的窗口相关推荐

  1. wordpress简捷按钮_通过在WordPress帖子中添加快速编辑按钮来节省时间

    wordpress简捷按钮 Have you ever made a mistake in your old WordPress posts and realized it when your use ...

  2. java窗体中添加图片_在java窗体程序中添加图片的方法

    在java窗体程序中添加图片的方法 发布时间:2020-06-16 11:24:13 来源:亿速云 阅读:148 作者:Leah 这篇文章主要为大家详细介绍了在java窗体程序中添加图片的方法,图文详 ...

  3. python word操作添加超链接_使用pythondocx在MSWord中添加超链接

    是的,我们能做到.Referenceimport docx from docx.enum.dml import MSO_THEME_COLOR_INDEX def add_hyperlink(para ...

  4. python列表添加元组_【Python爬虫】列表、元组、集合练习

    列表: pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值. list.append(obj) 在列表末尾添加新的对象 list.count(obj) 统计某个元素在列表 ...

  5. Windows添加网络位置向导(即我的电脑中添加网络盘符)

    Windows添加网络位置向导(即我的电脑中添加网络盘符) 简介 添加方法 网络位置格式 简介 概括来说,所谓的网络位置,是指一个主机上的一个盘符.比如,将IP地址为192.128.1.1的主机上的一 ...

  6. python如何写日志_【Python】教你如何在python中添加日志

    背景 起因是这次的项目用thrift来连接算法(python)和业务逻辑(java),因此有必要在python中添加日志来记录传入的参数.这样,当算法端没有正确响应时,就能方便地排查原因. 简易版实现 ...

  7. pygame为游戏添加背景_用 Python 制作飞机大战小游戏

    这这次用Python中的pygame模块来完成一个飞机大战的小游戏:基本思路是通过方向键来控制飞机的左右移动射击飞船.先来看下最后的效果为了新手也能完成,本文记录了编写的全部流程,也就是每次修改的代码 ...

  8. 字典添加数据_【Python基础学习】4. 数据类型之字典及其操作

    知行校园汇 记录学习.分享干货.吐槽人生! 关注 相关说明 文章内容:Python数据类型之字典及其操作 作者博客:csdn.cxhit.com www.cxhit.com 1. 什么是字典 在Pyt ...

  9. 用python进行营销分析_用python进行covid 19分析

    用python进行营销分析 Python is a highly powerful general purpose programming language which can be easily l ...

最新文章

  1. IIRF重写在asp.net4.0+IIS6中部分失败的解决方案
  2. tga文件怎么打开_六安软件定制文件打开的时候乱码怎么解决?
  3. linux用户及用户组管理
  4. 静态方法中不能new内部类的实例对象的总结
  5. java实验七输入输出流_实验六_Java的输入输出流
  6. apple watch自身不会让你更健康,而这些会
  7. Windows创建类似.project只有后缀名的文件的方法
  8. PHPCMS v9 安全防范教程!
  9. 微信可以远程控制电脑吗_上车| 手机远程控制手机,还可以控制电脑
  10. Pytorch:PIL 和CV
  11. 机器学习第3周:算法学习
  12. 手机APP测试主要有哪些内容
  13. Linux源码安装包快速升级方法
  14. 向量积的二维物理意义,二维向量叉乘几何意义
  15. 2019年小米软件开发《异数》笔试题
  16. Microsoft store 无法联网,显示Microsoft Store需要联网,你似乎没有联网
  17. 折腾小记(***+云盘选择+个人环境配置)
  18. 如何获取layui表格选中行的数据
  19. 红蓝攻防演练过程中零失陷经验分享
  20. 拓扑数据分析在机器学习中的应用

热门文章

  1. java图像在背景图移动_java – 在Swing中移动背景图像
  2. 计算机应用技术基础教案,计算机应用技术基础实训教案.doc
  3. 文档 hbase_0783-6.2.0-如何在Hue中集成HBase
  4. mysql登录报错error1045,mysql创建登录报错ERROR1045(28000)
  5. php post数组丢失,php – 神秘空$_POST数组
  6. html5 心,HTML5你必须知道的28个新特性
  7. 基于Python+Django的图书馆管理系统
  8. 基于JAVA+SpringMVC+Mybatis+MYSQL的航班预订系统
  9. 编程迷宫_跟我学编程第十期——迷宫游戏
  10. python 进程 线程 协程