Hello there. I'm trying to make a ping application. The application start but nothing is shown.
Here is my code.
Qt Code:
  1. #include "ping.h"
  2. #include "ui_ping.h"
  3.  
  4. //#include <iostream>
  5. //#include <stdio.h>
  6. //#include <stdlib.h>
  7.  
  8. #include <QtGui>
  9. #include <QApplication>
  10. #include <QMessageBox>
  11. #include <QTextEdit>
  12. #include <QtNetwork/QTcpSocket>
  13. #include <QPlainTextEdit>
  14. #include <QtNetwork>
  15.  
  16. //using namespace std;
  17.  
  18. ping::ping(QWidget *parent) :
  19. QMainWindow(parent),
  20. ui(new Ui::ping)
  21. {
  22. ui->setupUi(this);
  23.  
  24. }
  25.  
  26. ping::~ping()
  27. {
  28. delete ui;
  29. }
  30.  
  31.  
  32. void ping::on_pushButton_clicked()
  33. {
  34. QString m_sHostName = ui->lineEdit->text();
  35.  
  36.  
  37.  
  38. // Create QProcess object
  39. QProcess *proc;
  40. proc = new QProcess();
  41. proc->start("ping", QStringList() << QString(m_sHostName), QIODevice::ReadOnly);
  42. proc->waitForFinished(-1);
  43.  
  44.  
  45.  
  46.  
  47. // Show output
  48. ui->plainTextEdit->connect(proc, SIGNAL(readyReadStandardOutput()), this, SLOT(show()));
  49. ui->plainTextEdit->connect(proc, SIGNAL(readyReadStandardError()), this, SLOT(show()));
  50.  
  51.  
  52.  
  53. }
  54.  
  55.  
  56. // Show right message
  57. void ping::rightMessage()
  58. {
  59. QProcess *proc;
  60. proc = new QProcess();
  61.  
  62.  
  63. QByteArray strdata = proc->readAllStandardOutput();
  64. strdata = strdata.simplified();
  65. strdata = strdata.trimmed();
  66.  
  67. //ui->TextEditResult->setTextColor(Qt::black);
  68. ui->plainTextEdit->appendPlainText(strdata);
  69. // ui->plainTextEdit->appendPlainText("<br>");
  70.  
  71. }
  72.  
  73.  
  74. // Show wrong message
  75. void ping::wrongMessage()
  76. {
  77. QProcess *proc;
  78. proc = new QProcess();
  79.  
  80. QByteArray strdata = proc->readAllStandardError();
  81. //ui->TextEditResult->setTextColor(Qt::red);
  82. ui->plainTextEdit->appendPlainText(strdata);
  83. }
To copy to clipboard, switch view to plain text mode