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

Qt Discussion :

Connaitre le focus courant


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Par défaut Connaitre le focus courant
    Bonjour à toi lecteur de ce post,

    Je dispose d'un widget qui contient plusieurs lineedit ainsi qu'un QPushButton.

    Lors de l'appui sur le qpushbutton, je souhaite supprimer le texte contenu dans le qlineedit qui a le focus.

    J'ai essayé avec hasFocus(), cependant ne fonctionne pas en effet lors de l'appui sur le qpushbutton, c'est lui même qui a le focus et non plus le qlineedit !

    J'ai essayé avec focusWidget(), la cela marche mieux mais le problème c'est que je n'ai plus accès au membre de qlineedit !!!!

    Bref je me mords la queue...

    Merci d'avance à toi expert de Qt,

  2. #2
    Membre chevronné

    Inscrit en
    Octobre 2007
    Messages
    234
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 234
    Par défaut
    Avec hasFocus(), pour récupérer les membres des QLineEdit, il faut faire un dynamic_cast du QWidget* récupéré vers QLineEdit*. S'il réussit tu pourras accéder aux membres. Cependant, pour faire un hasFocus() qui marche, il faut que le widget avec lequel tu appelles la fonction soit un ancetre des QLineEdit mais pas du bouton, sinon il te répondra que c'est le bouton qui a le focus.

  3. #3
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Par défaut
    Merci kinji....

    C'est bien ce que j'ai fais dynamic_cast<QLineEdit*>(focusWidget()). Mais voila un nouveau problème...

    Je dois pouvoir effacer soit un QLineEdit ou un QTextEdit. Le problème c'est que je ne sais pas par avance ce que va me renvoyer le focusWidget. Je pense utiliser un try and catch !!!....

    Est une bonne méthode ?

    Bonne réception,

  4. #4
    Membre chevronné

    Inscrit en
    Octobre 2007
    Messages
    234
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 234
    Par défaut
    Je pense que quelques if résoudront ton problème:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if(QLineEdit* lineEdit = dynamic_cast<QLineEdit*>(focusWidget()))
    {
    //effacer le lineEdit
    }
    else if(QTextEdit* textEdit = dynamic_cast<QTextEdit*>(focusWidget()))
    {
    //effacer le textEdit
    }

  5. #5
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Par défaut Voila la fin...
    Bon le problème est résolu....

    La technique fonctionne, je vérifie que je n'ai pas un pointeur NULL (ce que test le if ;-) )

    Merci ki merci kinji,

  6. #6
    Membre chevronné

    Inscrit en
    Octobre 2007
    Messages
    234
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 234
    Par défaut
    Citation Envoyé par Alexiel2 Voir le message
    Merci ki merci kinji,
    Mais de rien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#] Comment connaitre le répertoire courant d'exécution ?
    Par romstarr dans le forum Services Web
    Réponses: 4
    Dernier message: 30/08/2009, 17h37
  2. Réponses: 4
    Dernier message: 19/12/2005, 10h47
  3. [Débutant] Connaitre le répertoire courant
    Par The Wretched dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 16/06/2005, 12h51
  4. Connaitre le repertoire courant
    Par vincent0 dans le forum wxWidgets
    Réponses: 3
    Dernier message: 14/02/2005, 19h53
  5. [Système] Connaître le répertoire courant
    Par Kimael dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 15/07/2004, 17h30

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