app.exec () no puede llamar a otro método (estática Qt)

Creo un librairy estático Qt. Necesito llamar a algún método, para cambiar la posición de una imagen. El problema es que el "app.exec ()" bloquea completamente el proceso. Sabes como hacerlo ?

Muchas gracias !

Aquí está mi archivo de cabecera de la lib

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

y mi init es: 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;
}

el problema es que no puedo llamar en mi código principal (que utiliza esta biblioteca) el método changePos o destroy porque la aplicación.exec () bloquea el proceso ... ¿cómo hacerlo?

Muchas gracias !

Respuestas a la pregunta(2)

Su respuesta a la pregunta