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

Agents de placement/Fenêtres Java Discussion :

Garder une JFrame en plein écran


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre habitué Avatar de Jose.N70
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Points : 130
    Points
    130
    Par défaut Garder une JFrame en plein écran
    Bonjour, je m'adresse à vous pour trouver une idée ou solution à un problème qui est le suivant :

    J'utilise une JFrame en plein écran, ca marche très bien. Le problème est que si je presse le bouton "Windows" (entre la touche ctrl et alt) je repasse sur le bureau windows, et ouvre le menu démarrer.

    Ma question est la suivante : est il possible de "désactiver" cette fonction ou de maintenir ma JFrame au premier plan pour éviter de basculer sur le bureau windows.

    Ma frame est placée au premier plan setAlwaysOnTop(true)

    Merci pour l'aide que vous pourriez m'apporter.

  2. #2
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    Salut,

    Citation Envoyé par Jose.N70 Voir le message
    Ma question est la suivante : est il possible de "désactiver" cette fonction ou de maintenir ma JFrame au premier plan pour éviter de basculer sur le bureau windows.
    je pense que c'est impossible, sinon peut être que tu peux le faire en utilisant quelque fonctions en C ou autre via JNI.

  3. #3
    Membre habitué Avatar de Jose.N70
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Points : 130
    Points
    130
    Par défaut
    Merci pour votre réponse je vais essayer de me débrouiller pour faire au mieux

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    Je pense que tu peux désactiver la touche en traitant l'appuie sur la touche.

    KeyEvent.VK_WINDOWS est la touche qui t'embête .

    pour capturer son appuie sur toute ton appli il faut aller voir du coter du eventDispatched.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    getToolkit().addAWTEventListener(new AWTEventListener() {
     
                public void eventDispatched(AWTEvent e) {
     
                    if (e instanceof KeyEvent) {
                        KeyEvent evt = (KeyEvent) e;
     
                        if (evt.getKeyCode() == KeyEvent.VK_WINDOWS) {
                            //ne rien faire
                            evt.consume();
                        }
                    }
                }
            }, AWTEvent.KEY_EVENT_MASK);
    A tester

  5. #5
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Ouais euh, ou pas en fait.

    Il est impossible en java pur de désactiver une touche, la touche windows continuera à faire apparaître le menu démarre quoi qu'il en soit.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    Bah la ouais c'est a tester car comme l'os envoie à java événement si on cosomme l'événement la touche est "désactivé" pour l'os.
    Mais il est vrai que maintenant je ne sais pas comment réagis windows si il prend quand même en compte l'évenement des touches spécials.

    Quoi qu'il en soit pour les autres touches c'est sur que ca mange l'événement.

    Et de plus je ne parle pas de désactivation pur et dur mais plutot d'une consommation de l'événement. Donc je ne sais pas. J'ai pas de windows sous la main pour tester mon bout de code.

  7. #7
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Ca ne changera rien, en effet windows a la main sur l'évenement clavier avant java, et dans le cas présent s'active avant que java prenne la main.

    Il n'y a aucun moyen d'éviter ce comportement en java.

    Le seul moyen éventuel étant de prendre la main avec du code natif (c/c++) qu'il faudra linker à java via JNI).

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    Je voie.

    Car sous linux par exemple si je lui donne la touche a a consumer et qu'ensuite j'essaye de l'utiliser. Et bien la touche "a" ne fonctionnera plus.

    Enfin c'est bizar et ce n'est pas encore tres net pour moi cet histoire de consommation .
    En gros certaine touche son envoyer directement à java et d'autre c'est l'os qui prime sur leur consommation ?


    ps : C'est bon je viens de comprendre. Ce que je bloque c'est la conso sous mon prog Java et non pas sous mon os exact.

  9. #9
    Membre habitué Avatar de Jose.N70
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Points : 130
    Points
    130
    Par défaut
    J'avais déjà essayé en "interceptant" la touche mais windows prend le dessus.

    Merci en tout cas.

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

Discussions similaires

  1. Afficher une JFrame en plein écran
    Par nassima_1418 dans le forum Agents de placement/Fenêtres
    Réponses: 8
    Dernier message: 22/10/2013, 16h25
  2. Ouvrir une popup en plein écran avec une barre de menu.
    Par magic8392 dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 12/10/2005, 10h43
  3. Comment ouvrir une fenêtre en plein écran ?
    Par magic8392 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 11/10/2005, 12h05
  4. ouvrir une page en plein écran et fermer la page restante
    Par stephcache dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/10/2005, 02h29
  5. [GNU Pascal] Lancer une application en plein écran
    Par joleboss dans le forum Autres IDE
    Réponses: 13
    Dernier message: 20/05/2004, 12h57

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