app.exec () kann keine andere Methode aufrufen (static lib Qt)

Ich erstelle eine statische Librairy Qt. Ich muss durch Aufrufen einer Methode die Position eines Bildes ändern. Das Problem ist, dass der "app.exec ()" - Block den Prozess abschließt. Weißt du, wie man es macht ?

Danke vielmals !

Hier ist meine Header-Datei der lib

int init(int argc, char *argv[], int width, int height);
void changePos (int x, int y);
void destroyPic();

und mein init ist: QWidget * window (0); QLabel * pic (0);

int init(int argc, char *argv[], int width, int height) {
    // initialize resources, if needed
    Q_INIT_RESOURCE(target);

    QApplication app(argc, argv);
    window = new QWidget();
    window->setWindowTitle("Test");
    window->setFixedSize(width, height);
    // create and show your widgets here
    pic = new QLabel(window);

    QPixmap pixmap(QString(":/res/pic.png"));
    pic->setPixmap(pixmap);
    pic->move(100,100);
    pic->setVisible(true);
    window->show();
    app.exec();

    return 0;
}

Das Problem ist, dass ich in meinem Hauptcode (der diese Bibliothek verwendet) die Methode changePos nicht aufrufen oder zerstören kann, weil die app.exec () den Prozess blockiert ... wie es geht?

Danke vielmals !

Antworten auf die Frage(2)

Ihre Antwort auf die Frage