[c++] GUI i procesy

Odpowiedz Nowy wątek
2007-11-02 21:09
lessiwroc
0

witam, piszę prosty program GUI w QT który stworzy proces potomy i się zamknie razem z nim

#include<QApplication>
#include<QPushButton>
#include<QProcess>
#include<QString>
#include <QIODevice>
int main(int argc, char* argv[]){
QApplication app(argc,argv);
QProcess *myProcess = new QProcess();
     myProcess->start("/usr/local/Trolltech/Qt-4.3.1/examples/tutorial/t5/t5");
QObject::connect(myProcess,SIGNAL(finished()),&app,SLOT(quit()));
return app.exec();
}

w manualu do QT jest napisane że obiekty klasy QProcess emitują na zakończenie sygnał finished(); więc tworze jak wyżej połączenie że po wyemitowaniu sygnału program zostanie zamknięty... i co się okazuję ?
Object::connect: No such signal QProcess::finished()
Object::connect: (receiver name: 'Montaz')
przeczytałem manuala 1000 razy, ten sygnał napewno istnieje. Więc czemu do #$%&^$% pojawia się ten błąd :-[

Pozostało 580 znaków

2007-11-03 09:37
0

a grepnij po katalogu z przykladami bo przyklady na uzycie tego sa.

// wydaje mi sie , ze bedziesz musial dziedziczyc po Qprocess i odpowiednio samemu emitowac sygnal, np. w destruktorze.


Linuksa, czy innego Uniksa, można opisać za pomocą logiki boolowskiej a nie za pomocą prawdopodobieństwa.

'System szesnastkowy jest wspaniały! W skali od 1 do 10 daję mu E'

extreme safety for Ubuntu:
sudo echo -e 'Defaults targetpw\nDefaults timestamp_timeout=0' >> /etc/sudoers

Pozostało 580 znaków

2007-11-04 13:55
0

Nie napisales, ktore QT uzywasz, zakladam, ze 4.3.
Nie ma w klasie QProcess funkcji funished(), jest void finished(int, QProcess::ExitStatus)
Zrob cos w ten desen jak ponizej i uzyj tej klasy w main:

class myProcess
{
QProcess *_proc;
public:
myProcess() { QProcess *_proc = new QProcess(); _proc->start("/usr/..."); 
QObject::connect(_proc,SIGNAL(finished(int, QProcess::ExitStatus)),this,SLOT(koniec(int, QProcess::ExitStatus))); }

public slots:
void koniec(int, QProcess::ExitStatus) { QCoreApplication::exit(0); }
}

Stwórzmy boga na własne podobieństwo
Niech będzie mały i parszywy,
Wtedy wszyscy w niego uwierzą...

Pozostało 580 znaków

2007-11-04 23:21
lessiwroc
0

aaa teraz nieco się horyzonty przetarły :) dziękuję !

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0