IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Implémenter un signal avec isMinimized()

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut Implémenter un signal avec isMinimized()
    Salut les gens! Voila j'ai un petit souci avec mes fenetres.

    En gros je vous donne un exemple une fenetre A en engendre une B, normalement quand j'execute un retour de B vers A ( avec )
    Ben la fenetre A est toujours visible sur l'ecran, le problème c'est que si cette fois j'effectue des actions sur B et que je reviens sur A, A est minimisé! c'est assez frustrant car comme mes fenetres sont en cascade, a chaque fois que j'execute un retour la fenetre parente est minimisé et je dois revenir sur la barre des tâches pour qu'elle soit visible!

    Du coup je voudrais emettre un signal quand une fenetre X est minimisé

    je fais donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    QObject::connect(this, SIGNAL(isMinimized()), this, SLOT(OnReductionFen()));
    Mais ça ne fonctionne pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Object::connect: No such signal DOTI_ACCUEIL::isMinimized() in IHM_QT\DOTI_ACCUEIL.cpp:54
    Object::connect:  (sender name:   'IHM_DOTI_ACCUEIL')
    Object::connect:  (receiver name: 'IHM_DOTI_ACCUEIL')
    Une idée?

  2. #2
    Membre éprouvé
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Par défaut
    isMinimized c'est pas un signal mais une méthode pour connaître l'état

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut
    Citation Envoyé par _skip Voir le message
    isMinimized c'est pas un signal mais une méthode pour connaître l'état
    Arf okay , du coup je peux pas savoir quand la fenêtre est réduite.

    Y'aurait il un moyen de lancer la fenêtre et de la garder active, non pas avec isactivewindows car les fenetre sont modales, un moyen pour que les fenêtres ne soient jamais réduite

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2010
    Messages
    199
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 199
    Par défaut
    Tu peux, grâce aux window flags ( http://qt.developpez.com/doc/latest/...indowType-enum ) désactiver la décoration pour le minimize (regarde : Qt::WindowMinimizeButtonHint ).


    L'autre solution est de réagir au changement d'état ( http://qt.developpez.com/doc/latest/...angeevent.html ).
    De mémoire, il n'est pas possible d'empêcher le minimize (c'est le window manager qui décide), mais du coup il "suffit" de poster un restore.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut
    Citation Envoyé par sysedit Voir le message
    Tu peux, grâce aux window flags ( http://qt.developpez.com/doc/latest/...indowType-enum ) désactiver la décoration pour le minimize (regarde : Qt::WindowMinimizeButtonHint ).


    L'autre solution est de réagir au changement d'état ( http://qt.developpez.com/doc/latest/...angeevent.html ).
    De mémoire, il n'est pas possible d'empêcher le minimize (c'est le window manager qui décide), mais du coup il "suffit" de poster un restore.
    Bon la j'arrive à détecter quand la fenêtre est réduite. Et dans le monde merveilleux de la programmation, quand on résoud un problème, en fait on en découvre un autre

    Ma fenêtre ne se réduit pas, elle se met derrière les autres fenêtres actives.
    Y'a t'il un moyen de garder la fenêtre au premier plan? Comme sur media player par exemple quand on clique sur l'option toujours visible?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut
    Citation Envoyé par tutudanslarue Voir le message
    Bon la j'arrive à détecter quand la fenêtre est réduite. Et dans le monde merveilleux de la programmation, quand on résoud un problème, en fait on en découvre un autre

    Ma fenêtre ne se réduit pas, elle se met derrière les autres fenêtres actives.
    Y'a t'il un moyen de garder la fenêtre au premier plan? Comme sur media player par exemple quand on clique sur l'option toujours visible?
    Bon j'ai identifié le problème : il s'agit en fait de la fenetre de chargement que j'applique sur cette fenetre pour charger une bibliothèque, si j'enleve le show de la fenetre de chargement, l'app reste au premier plan.

    Maintenant je ne vois aucun rapport entre les 2!

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2010
    Messages
    199
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 199
    Par défaut
    Citation Envoyé par tutudanslarue Voir le message
    Bon la j'arrive à détecter quand la fenêtre est réduite. Et dans le monde merveilleux de la programmation, quand on résoud un problème, en fait on en découvre un autre

    Ma fenêtre ne se réduit pas, elle se met derrière les autres fenêtres actives.
    Y'a t'il un moyen de garder la fenêtre au premier plan? Comme sur media player par exemple quand on clique sur l'option toujours visible?
    Toujours dans les window flags, il y a

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Qt::WindowStaysOnTopHint
    qui permet d'indiquer que la fenêtre doit toujours être au premier plan.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      if( onTop )
      {
        setWindowFlags( windowFlags() | Qt::WindowStaysOnTopHint );
      }
      else
      {
        setWindowFlags( windowFlags() & ~Qt::WindowStaysOnTopHint );
      }
      show();
    permet de basculer d'un mode à l'autre.

Discussions similaires

  1. Réponses: 17
    Dernier message: 01/02/2008, 17h14
  2. [WIFI] Amplification de signal avec D-LINK
    Par freud dans le forum Hardware
    Réponses: 5
    Dernier message: 03/05/2007, 14h31
  3. Réponses: 10
    Dernier message: 10/05/2006, 10h23
  4. Réponses: 3
    Dernier message: 21/03/2006, 10h37
  5. reccuperer un signal avec port //
    Par matterazzo dans le forum C++Builder
    Réponses: 1
    Dernier message: 10/10/2005, 16h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo