Kiberchief
@Kiberchief
Пока учусь.

Почему поле lineEdit не реагирует на enter?

Здравствуйте!
Хочу создать командную строку в qt с помощью класса QProcess, но у меня возникла проблема поле lineEdit вообще не реагирует на нажатие enter, помогите пожалуйста разобраться в чем может быть проблема.

#include "secondwindow.h"
#include "ui_secondwindow.h"
#include <QNetworkInterface>
#include <QDebug>
#include <QHostInfo>
#include <QObject>
#include <QTextCodec>
#include <QtNetwork>
#include <QProcess>

SecondWindow::SecondWindow(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::SecondWindow)
{
    ui->setupUi(this);

    m_process = new QProcess(this);
        connect(m_process, SIGNAL(readyReadStandardOutput()), this, SLOT(setStdout()) );
        connect(ui->lineEdit_4, SIGNAL(returnPressed()), this, SLOT(command()) );
}

SecondWindow::~SecondWindow()
{
    delete ui;
}
void SecondWindow::setStdout()
{
    if(QSysInfo::productType()=="windows")
    {
        QTextCodec *codec = QTextCodec::codecForName("IBM 866");
        ui->textEdit->append( codec->toUnicode(m_process->readAllStandardOutput() ) );
    }
    else
        ui->textEdit->append( m_process->readAllStandardOutput() );
}
void SecondWindow::command()
{
    QString strCommand;
    if(QSysInfo::productType()=="windows")
        strCommand = "cmd /C ";
    strCommand += ui->lineEdit_4->text();
    m_process->start(strCommand);
}
  • Вопрос задан
  • 49 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы