qt运行cmd命令_cmd ping大包命令

qt运行cmd命令_cmd ping大包命令0-问题描述在实现QT调用外部程序cmd.exe的时候传回来的参数需要显示在textbrowser控件上,但是一直等待数据全部接受完毕会才显示,会导致页面卡死的假象,所以下面利用append()进行每次都更新,可以很好的解决这个问题。1-解决方案//mainwindow.cpp文件,主界面实现#include”mainwindow.h”#include”ui_mainwindow.h…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

0-问题描述

在实现QT调用外部程序cmd.exe的时候传回来的参数需要显示在textbrowser控件上,但是一直等待数据全部接受完毕会才显示,会导致页面卡死的假象,所以下面利用append()进行每次都更新,可以很好的解决这个问题。

1-解决方案

//mainwindow.cpp文件,主界面实现
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <qdebug.h>
#include <qprocess.h>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow){ 
   
    ui->setupUi(this);
}
MainWindow::~MainWindow(){ 
   
    delete ui;
}
void MainWindow::on_btnPing_clicked(){ 
   
    qDebug()<<QStringLiteral("开始点击");
    ui->textBrowser->clear();
    ui->textBrowser->setText(QStringLiteral("请等待"));
    ui->textBrowser->update();

    QProcess myProcess(this);
    QString program = "C:/Windows/System32/cmd.exe";
    QStringList arguments;
    arguments <<"/c" <<"ping www.baidu.com";
    myProcess.start(program,arguments);

    while (myProcess.waitForFinished(100) == false) { 
   
        QByteArray qByteRead = myProcess.readAllStandardOutput();
        if (!qByteRead.isEmpty()) { 
   
            ui->textBrowser->append(QString::fromLocal8Bit(qByteRead));
            repaint();
        }
    }
    QByteArray qByteRead = myProcess.readAllStandardOutput();
    ui->textBrowser->append(QString::fromLocal8Bit(qByteRead));

    qDebug()<<QString::fromLocal8Bit(qByteRead);
    qDebug()<<"结束点击";
}
  • 下面是会假死的方式
    QProcess myProcess(this);
    QString program = "C:/Windows/System32/cmd.exe";
    QStringList arguments;
    arguments <<"/c" <<"ping www.baidu.com";
    myProcess.start(program,arguments);
    myProcess.waitForFinished();
    QString qstr = QString::fromLocal8Bit(myProcess.readAllStandardOutput());
    ui->textBrowser->setText(qstr);

这篇文章也可以作为参考:外部程序与QT传参
PS:公众号上线啦,技术干货分享,欢迎关注。


qt运行cmd命令_cmd ping大包命令

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193461.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【java】【继承实例】学生类,老师类 extends 人类类

    【java】【继承实例】学生类,老师类 extends 人类类子类继承父类 父类就相当于子类的共性 子类相当于父类的特性 继承之后再重写子类方法 给予子类更多操作的可能 子类还能利用 super 调用父类可以说子类的操作基于父类 但又能在父类的根基上发展出更多可能性通过查找共性编写父类 通过查找特性编写子类继承要点人类类 publicclassH privateStrin privateStrin 构造方法 publicHuman

    2025年10月27日
    7
  • 【入门到精通】❤️「Java工程师全栈知识路线」

    《Java程序设计基础》章节内容第1章Java程序设计基础作业目录(作业笔记)第1章Java程序设计基础笔记•【第1章初识Java】第2章Java程序设计基础笔记•【第2章变量与数据类型】第3章Java程序设计基础笔记•【第3章运算符与表达式】第4章Java程序设计基础笔记•【第4章条件结构】第5章Java程序…

    2022年4月6日
    41
  • 链接脚本之LMA VMA解释

    链接脚本之LMA VMA解释

    2022年1月29日
    45
  • git私有服务器架设_centos搭建git服务器

    git私有服务器架设_centos搭建git服务器一概述搭建自己的代码托管服务git服务,使用的是gitblit插件,具体操作搭建步骤详情见下文。客户端软件:git-2.34.1-64.bit服务端软件:gitblit-1.8.0二搭建过程2.1使用插件gitblit

    2022年10月4日
    2
  • PHP获取搜索引擎关键词

    PHP获取搜索引擎关键词

    2021年10月30日
    63
  • 96 年美女胜出!那个有关“猪脸识别”的比赛决出冠军啦

    96 年美女胜出!那个有关“猪脸识别”的比赛决出冠军啦点击上方“程序员小灰”,选择“置顶公众号”有趣有内涵的文章第一时间送达!还记得前段时间风靡技术界的“猪脸识别”吗?据了解,在知乎上与此有关的仅仅一个问题的浏览量就超过了35万,”猪脸识别”是JDD-2017京东金融全球数据探索者大赛的四大赛题之一,自从京东金融JDD大赛启动,就掀起了好大一波关注。而最近,这个与“猪脸识别”有关的JDD—2017京东金融全球数据探索者大赛经过多轮

    2022年6月21日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号