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

AWT/Swing Java Discussion :

Fonctionnement des JDialog sur Mac Os


Sujet :

AWT/Swing Java

  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    1
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1
    Par d�faut Fonctionnement des JDialog sur Mac Os
    Bonjour,

    J'essaie de faire tourner une application swing sur mac os. Cette application tourne d�j� sur linux et windows.

    J'utilise des JDialog pour certaines fen�tres pour ne pas avoir les boutons minimiser ou maximiser la fen�tre.

    Or sur MacOs les boutons apparaissent quand m�me. J'ai forc� le lookAndFeel java par d�faut � Metal, mais rien n'y fait j'ai toujours les boutons.

    Est-ce que quelqu'un a une id�e pour les faire dispara�tre des JDialog.

    Pour le moment seul la ligne de code dialog.setUndecorated(true); a fonctionn�, mais je n'ai plus non plus de titre sur ma fen�tre et ce n'est pas ce que jsouhaite.

    Merci pour votre aide

  2. #2
    Membre averti
    Homme Profil pro
    D�veloppeur Java
    Inscrit en
    Novembre 2022
    Messages
    49
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur Java

    Informations forums :
    Inscription : Novembre 2022
    Messages : 49
    Par d�faut
    as-tu pens� �

    bouton.setVisible(false) .

  3. #3
    R�dacteur/Mod�rateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Ao�t 2005
    Messages
    6 900
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : Nouvelle-Cal�donie

    Informations professionnelles :
    Activit� : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par d�faut
    Merci d��viter de r�veiller des sujets qui dorment depuis plusieurs ann�es.


    On parle bien ici des boutons de contr�le de la fen�tre qui sert a afficher une boite de dialogue. Sur Windows (et Linux) les boutons appara�tront ou dispara�tront en fonction du fait que le dialogue soit redimensionnable, mais sur macOS ils sont toujours presents meme si d�sactiv�s.


    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    package test.dialog;
     
    import javax.swing.*;
    import java.awt.*;
     
    public class Main {
        public static void main(final String... args) {
            SwingUtilities.invokeLater(Main::launchAtEDT);
        }
     
        private static void launchAtEDT() {
            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            } catch (ClassNotFoundException | InstantiationException | IllegalAccessException |
                     UnsupportedLookAndFeelException ex) {
                ex.printStackTrace();
            }
            final var button = new JButton("Click me!");
            final var toolBar = new JToolBar();
            toolBar.setFloatable(false);
            toolBar.add(button);
            final var frame = new JFrame("Test");
            button.addActionListener(event -> {
                final var dialog = createDialog(frame);
                dialog.setVisible(true);
            });
            frame.setLayout(new BorderLayout());
            frame.add(toolBar, BorderLayout.NORTH);
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setMinimumSize(new Dimension(800, 600));
            frame.setLocationRelativeTo(null);
            frame.setVisible(true);
        }
     
        private static JDialog createDialog(JFrame parent) {
            final var closeButton = new JButton("Exit");
            final var toolBar = new JToolBar();
            toolBar.setFloatable(false);
            toolBar.add(Box.createHorizontalGlue());
            toolBar.add(closeButton);
            final var label = new JLabel("This is a dialog box");
            final var dialog = new JDialog(parent, "Dialog");
            closeButton.addActionListener(event -> dialog.setVisible(false));
            dialog.setLayout(new BorderLayout());
            dialog.setModal(true);
            dialog.setResizable(false);
            dialog.add(label, BorderLayout.CENTER);
            dialog.add(toolBar, BorderLayout.SOUTH);
            dialog.setSize(300, 200);
            dialog.setLocationRelativeTo(parent.getContentPane());
            return dialog;
        }
    }
    Nom : dialog1.jpg
Affichages : 13
Taille : 25,9 Ko Nom : dialog2.jpg
Affichages : 12
Taille : 31,4 Ko

    Et non il n'est pas possible de supprimer ces boutons facilement depuis du code Java.
    Il est peut-�tre possible de le faire en utilisant une lib native capable de r�cup�rer un handle / pointeur sur la fen�tre native utilis�e par Swing (aucune id�e sur comment faire sur macOS).
    Merci de penser au tag quand une r�ponse a �t� apport�e � votre question. Aucune r�ponse ne sera donn�e � des messages priv�s portant sur des questions d'ordre technique. Les forums sont l� pour que vous y postiez publiquement vos probl�mes.

    suivez mon blog sur D�veloppez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

Discussions similaires

  1. Upload et gestion des accents sur Mac
    Par Perrichon dans le forum Langage
    R�ponses: 3
    Dernier message: 06/06/2013, 12h08
  2. Couleur des JButton sur Mac
    Par HNoury dans le forum Interfaces Graphiques en Java
    R�ponses: 8
    Dernier message: 07/09/2009, 18h51
  3. Fonctionnement de Opendirectory sur MAC
    Par Elmariachi dans le forum Apple
    R�ponses: 1
    Dernier message: 29/03/2007, 19h12
  4. Code qui ne fonctionne pas sur Mac
    Par malbaladejo dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 14/01/2005, 11h08

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