Knowledge Base Nr: 00034 popupwindow.cpp - http://www.swe-kaiser.de

Downloads:

linux: qt-programm das für eine bestimmte zeit einen text anzeigt und sich dann wieder beendet.
usage: PopupWindow [displayseconds] "message text"

  
main.cpp:
================
int main( int argc, char** argv )
{
QApplication app( argc, argv );

PopupDialog dialog( 0, 0, TRUE );
app.setMainWidget(&dialog);

QString strTimeout, strMsg;

if (argc == 2)
{
strTimeout = "5";
strMsg.sprintf("%s", argv[1]);
}
else if (argc == 3)
{
strTimeout = argv[1];
strMsg.sprintf("%s", argv[2]);
}
else
{
strTimeout = "5";
strMsg.sprintf("usage: PopupWindow [seconds] \"message text\"");
}

dialog.start(strTimeout, strMsg);

return 0;
}

PopupDialog.h:
================
public:
void start(const char* lpszQuitAfterSec, const char* lpszText);

public slots:
void timeout() { done(0); }

PopupDialog.cpp:
================
void PopupDialog::start(const char* lpszQuitAfterSec, const char* lpszText)
{
TextLabel1->setText(lpszText);

QTimer *t = new QTimer(this);
connect( t, SIGNAL(timeout()), SLOT(timeout()) );
t->start(atoi(lpszQuitAfterSec) * 1000, FALSE );

exec();
}