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 :

Comment intercepter un raccourci clavier en arrière plan avec Qt et Linux ?


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Par défaut Comment intercepter un raccourci clavier en arrière plan avec Qt et Linux ?
    Bonjour,

    Comme le titre l'indique, j'ai une appli qui, quand je l'ouvre, créé un QTrayIcon et une fenêtre que je cache avec la fonction hide() !
    En fait, j'aimerais qu’en faisant Alt+S la fonction show() de la fenêtre soit appeler !
    Le problème, c’est que mon appli n'est plus en focus et je ne sais pas comment faire pour intercepter le raccourci clavier !

    Si quelqu'un a une idée je suis preneur !
    Merci pour votre aide !

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2008
    Messages : 26 772
    Par défaut


    À ma connaissance, Qt ne fournit rien à ce niveau, tu dois jouer avec les API système. Par exemple, pour Windows, https://docs.microsoft.com/en-us/win...registerhotkey ; pour X11, https://github.com/jwmullally/xhklib. Je crains que tu doives trouver une solution différente pour Wayland (avec un peu de chance, elle sera utilisable pour Gnome et KDE…).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Membre confirmé Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Par défaut
    Merci de ta réponse !
    Ce que je ne comprends pas, c'est que certain logiciel comme synapse (l'alternative a spotlight sur Linux) le font sans problèmes et peux importe la distro Linux !

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 156
    Billets dans le blog
    151
    Par défaut
    Bonjour,

    Du coup, vous pourriez jeter un œil au code (et le récupérer après ), vu que c'est open source/Linux. Je pense qu'ils se sont interfacer avec X11.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Membre confirmé Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Par défaut
    Oui, le problème, c’est que c'est du vala et je ne connais pas du tout !

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 156
    Billets dans le blog
    151
    Par défaut
    Après une "longue" recherche dans le code, synapse repose sur cette bibliothèque keybinder (le binding pour Vala). Le code est ici : https://github.com/kupferlauncher/keybinder et ... ça repose sur X11.
    (Il est à noter que je ne connais pas non plus le Vala, c'est ma deuxième fois avec ce langage. Mais tous les langages informatiques sont "similaires", dans le sens, les appels de fonctions, les conditions... sont très facilement reconnaissables d'un langage à un autre. Il ne faut donc jamais hésiter à essayer de lire, de découvrir )
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/02/2006, 00h11
  2. Comment définir des raccourcis clavier ?
    Par st0nky dans le forum Composants VCL
    Réponses: 3
    Dernier message: 07/12/2005, 20h37
  3. Intercepter un raccourci clavier
    Par Benjy dans le forum C++Builder
    Réponses: 1
    Dernier message: 08/10/2005, 09h25
  4. Comment spécifier des raccourcis claviers sur une Form ?
    Par Sydaze dans le forum Composants VCL
    Réponses: 5
    Dernier message: 17/06/2005, 09h05
  5. Réponses: 2
    Dernier message: 02/12/2004, 08h33

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