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 :

setAlwaysOnTop() - affichage prioritaire


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 17
    Par défaut setAlwaysOnTop() - affichage prioritaire
    Bonjour,

    J'ai utilisé auparavant setAlwaysOnTop(true) pour que ma ptite jframe reste active par dessus d'autres fenêtres, tel qu'un browser.

    J'aimerais maintenant également conserver cette "priorité" par dessus des applications full screen (jeu League of Legends ). J'ai tenté éventuellement de faire répéter l'action setAlwaysOnTop(true); toutes les secondes, enfin bref c'est autre chose.

    Help!

    Merci!

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 109
    Par défaut
    Tiens tu en connais beaucoup des softs qui restent affiché dans une fenêtre alors que tu es en plein ecran ?

    A mon avis ce que tu cherches à faire ne va pas fonctionner malheureusement

    Sinon une autre solution qui reste c'est de lancé ton jeu en mode windowed. (Ce qui est généralement possible avec la plupart)
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Salut,

    j'ai déjà fait ça avec SWT et mon shell s'affiche bien au dessus de toutes les fenêtres d applications, y compris celle en fullscreen. Bon, si ton application est en SWING, ça va faire peut être pas mal de boulot pour tout migrer, c'est sûr. Mais c'est une solution, si tu y tiens, car dans mon cas, c'était les spécifications qui l'imposait, mais qu'à l'usage c'est vraiment lourd d'avoir cette fenêtre qui est toujours là, en particulier quand un dialogue s'affiche dans une application et donc qu'il se trouve donc caché.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  4. #4
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 109
    Par défaut
    Joel: Tu as un code qui fait ca (meme le SWT) ? Je voudrais bien le voir ca peut toujours être utile mais aussi par curiosité maladive
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par wax78 Voir le message
    Joel: Tu as un code qui fait ca (meme le SWT) ? Je voudrais bien le voir ca peut toujours être utile mais aussi par curiosité maladive
    Bof, y'a rien de transcendental
    Voici un petit projet de démo vite fait : http://www.4shared.com/zip/pL65XThJ/...waysOnTop.html

    Le nom des classes me paraissent suffisamment parlants
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  6. #6
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 109
    Par défaut
    Je pensais plus au code source pas un site un peu suspect ou il faut se logguer te patatrata
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par wax78 Voir le message
    Je pensais plus au code source pas un site un peu suspect ou il faut se logguer te patatrata
    Je voulais juste éviter de mettre à zip de 2 Mo sur le forum

    ok, v'la le code source (faudra charger de ton coté le jar de swt) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    public class DemoAlwaysOnTop {
     
    	public static void main(String[] args) {
     
    		Display display = new Display();
     
    		try {
    			Shell shell = new Shell(display, SWT.SHELL_TRIM | SWT.ON_TOP );
    			shell.setText("Une belle fenêtre au dessus de tout...");
    			SWTUtils.center(shell, 0.4,0.4);
    			SWTUtils.show(shell);
    		}
    		finally {
    			display.dispose();
    		}
     
    	}
     
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    public class DemoFullscreen {
     
    	public static void main(String[] args) {
     
    		Display display = new Display();
     
    		try {
    			final Shell shell = new Shell(display, SWT.NO_TRIM );
    			SWTUtils.sizeToScreen(shell);
    			shell.setFullScreen(true);
    			shell.setLayout(new GridLayout());
    			Button button = new Button(shell,SWT.PUSH);
    			button.setText("Cliquez-moi dessus pour me fermer");
    			button.addSelectionListener(new SelectionAdapter() {
    				@Override
    				public void widgetSelected(SelectionEvent paramSelectionEvent) {
    					shell.dispose();
    				}
    				@Override
    				public void widgetDefaultSelected(
    						SelectionEvent paramSelectionEvent) {
    					super.widgetSelected(paramSelectionEvent);
    				}
    			}); 
    			button.setLayoutData(new GridData(SWT.CENTER,SWT.CENTER,true,true));
    			SWTUtils.show(shell);
    		}
    		finally {
    			display.dispose();
    		}
     
    	}
    }
    et pour les utils :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    public class SWTUtils {
     
    	public static void show(Shell shell) {
    		Display display = shell.getDisplay();
    		shell.open();
    		while (!shell.isDisposed()) {
    			if (!display.readAndDispatch())
    				display.sleep();
    		}
    	}
     
    	public static void sizeToMonitor(Shell shell) {
    		sizeToMonitor(shell, shell.getMonitor());
    	}
     
    	public static void sizeToMonitor(Shell shell, Monitor monitor) {
    		Rectangle area = monitor.getClientArea();
    		shell.setBounds(area);
    	}
     
    	public static void center(Shell shell, double fw, double fh) {
    		Rectangle area = shell.getMonitor().getClientArea();
    		int width = (int) (area.width*fw);
    		int height = (int) (area.height*fh);
    		int x = area.x + (area.width - width)/2;
    		int y = area.y + (area.height - height)/2;
    		shell.setBounds(x, y, width, height);
    	}
     
    	public static void sizeToScreen(Shell shell) {
    		sizeToScreen(shell, shell.getMonitor());
    	}
     
    	public static void sizeToScreen(Shell shell, Monitor monitor) {
    		Rectangle size = monitor.getBounds();
    		shell.setBounds(size);
    	} 
     
    }
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  8. #8
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 109
    Par défaut
    Ouais mais ton truc la il a pas trop l'air de faire ce qui est demandé, a savoir avoir une fenêtre qui prends pas tout l'écran (enfin si j'ai bien compris la demande a la base) pendant qu'un jeu tourne lui en plein ecran.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par wax78 Voir le message
    Ouais mais ton truc la il a pas trop l'air de faire ce qui est demandé, a savoir avoir une fenêtre qui prends pas tout l'écran (enfin si j'ai bien compris la demande a la base) pendant qu'un jeu tourne lui en plein ecran.
    C'est sur que si le jeu fonctionne en mode video, enfin hors Windows, ça marchera pas (Ca marche pas en effet sur le portail metro de Windows 8 par exemple). Mais ma fenêtre on_top ne prend pas tout l'écran. La fenêtre fullscreen oui, mais c'est pour l'exemple d'une application fullscreen : mais une application Windows bien sûr. A mon avis pour faire ça, il faut voir si on peut pas utiliser jna.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

Discussions similaires

  1. [Débutant] Affichage de résultat prioritaire
    Par b-yza dans le forum C#
    Réponses: 11
    Dernier message: 04/11/2014, 15h14
  2. Pb affichage avec un PaintBox (pour eviter scintillement)
    Par juan64 dans le forum C++Builder
    Réponses: 7
    Dernier message: 08/04/2004, 10h21
  3. Affichage de documents PDF
    Par Dajon dans le forum C++Builder
    Réponses: 5
    Dernier message: 10/10/2002, 12h36
  4. probléme d'affichage d'une fiche
    Par sb dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 10h43
  5. Affichage en passant par un buffer...
    Par Sirotilc dans le forum MFC
    Réponses: 5
    Dernier message: 27/05/2002, 22h00

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