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

Apple Discussion :

Comment désactiver Aqua?


Sujet :

Apple

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 171
    Points : 163
    Points
    163
    Par défaut Comment désactiver Aqua?
    Bonjour,

    Mon iMac utilise le gestionnaire de boutons/onglets/etc. "Aqua". Cela me pose un problème avec un programme Java : les boutons demeurent incolores.

    Est-ce que vous savez si on peut choisir une autre "police de boutons" que "Aqua"?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Mai 2008
    Messages : 121
    Points : 65
    Points
    65
    Par défaut
    Aqua fait partie de Mac OS X et ne peut donc pas se "désactiver" ! Cependant, il est possible de "customiser" le système ; tout dépendra de sa version.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 171
    Points : 163
    Points
    163
    Par défaut
    Qu'est-ce que "Customiser" veut dire??

    Mon OS :

    Version du système : Mac OS X 10.5.8 (9L31a)
    Version du noyau : Darwin 9.8.0
    Volume de démarrage : Macintosh HD
    Mode de démarrage : Normal


    La nouvelle version de la JVM Mac OS n'a pas résolu le problème. Je vais penser mon problème autrement...

  4. #4
    Membre averti
    Avatar de Chatanga
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 211
    Points : 346
    Points
    346
    Par défaut
    Citation Envoyé par HNoury Voir le message
    La nouvelle version de la JVM Mac OS n'a pas résolu le problème. Je vais penser mon problème autrement...
    Tu as vraiment la tête dure... Il n'y a pas l'ombre d'un bug dans toute cette histoire, juste ton incapacité à comprendre le fonctionnement de Swing.

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    UIManager.setLookAndFeel(new MetalLookAndFeel());

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 171
    Points : 163
    Points
    163
    Par défaut
    Oups,Chatanga me gronde! Sans doute avec raison.

    Je ne connais pas ceci :
    UIManager.setLookAndFeel(new MetalLookAndFeel());

    Pour avoir lu les cours sur ObjectiveC, cela semble être du code Apple. Mais je n'en ai pas poursuivi l'apprentissage et suis resté au java.

    J'ai tenté au cas où de copier cette ligne de code dans le mien. Eclipse m'a proposé d'importer le MetalLoofAndFeel, mais ensuite le compilateur n'a pas laissé démarrer le programme.

    Chatanga, peux-tu m'expliquer ce qu'est ce code, et comment s'en sert-on s'il te plaît? Merci...

  6. #6
    Expert confirmé
    Avatar de Valère
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 334
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2005
    Messages : 1 334
    Points : 4 740
    Points
    4 740
    Par défaut
    Non, non, c'est bien du java.

    Va voir dans la FAQ GUI java.

    Valère
    Pensez au bouton
    Je ne répond pas aux questions techniques par email ou MP.

  7. #7
    Membre averti
    Avatar de Chatanga
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 211
    Points : 346
    Points
    346
    Par défaut
    Citation Envoyé par HNoury Voir le message
    Oups,Chatanga me gronde! Sans doute avec raison.

    Je ne connais pas ceci :
    UIManager.setLookAndFeel(new MetalLookAndFeel());

    Pour avoir lu les cours sur ObjectiveC, cela semble être du code Apple. Mais je n'en ai pas poursuivi l'apprentissage et suis resté au java.

    J'ai tenté au cas où de copier cette ligne de code dans le mien. Eclipse m'a proposé d'importer le MetalLoofAndFeel, mais ensuite le compilateur n'a pas laissé démarrer le programme.

    Chatanga, peux-tu m'expliquer ce qu'est ce code, et comment s'en sert-on s'il te plaît? Merci...
    Pour faire simple : les JComponent Swing fournis avec le JDK (JTextField, JButton, etc.) ne se dessinent pas eux-mêmes mais délèguent leur rendu à des UI Delegate, c'est-à-dire des instances de ComponentUI. Le but d'un look and feel est justement de founir un jeu de ComponentUI pour tous les composants Swing. L'association entre un JComponent et un ComponentUI peut être changée dynamiquement lorsqu'on change le look and feel courant de la manière suivante :

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    UIManager.setLookAndFeel(new MetalLookAndFeel());

    Le look and feel Metal est le celui "par défaut" de Swing qu'on retrouve sur toutes les plateformes, alors que les look and feel dits "natifs" (ils sont en Java et ont juste la même tête que le thême natif de leur plateforme) ne sont généralement disponibles que sur une plateforme unique
    (pour des raisons de copyright et non des contraintes techniques).

    Voici un exemple plus complet pout illustrer la configuration d'un look and feel.

    Code java : 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
     
    import javax.swing.SwingUtilities;
    import javax.swing.UIManager;
    import javax.swing.UnsupportedLookAndFeelException;
    import javax.swing.plaf.metal.MetalLookAndFeel;
     
    public class MonApplication {
     
    	public static void main(String[] arguments) {
    		SwingUtilities.invokeLater(new Runnable() {
     
    			public void run() {
    				try {
    					UIManager.setLookAndFeel(new MetalLookAndFeel());
    					JFrame frame = new JFrame("Mon application");
    					frame.setSize(800, 600);
    					frame.setVisible(true);
    				} catch (UnsupportedLookAndFeelException e) {
    					throw new RuntimeException(e);
    				}
    			}
    		});
    	}
    }

    Je n'ai fait que décrire grossièrement le fonctionnement de Swing, le lien http://www.j2ee.me/products/jfc/tsc/...ure/index.html de donnera plus d'informations. J'ajoute même ce lien http://code.google.com/p/macwidgets en bonus.

    Quoiqu'il en soit, il n'y a pas de formule magique à appliquer aveuglément pour ton problème. Soit le comportement par défaut - dénué de bug - de Swing te convient, soit tu vas devoir te plonger *réellement* dans Swing. Et comme tu es capable de confondre du Java et de l'Objective C... le chemin risque d'être long. A titre d'exemple, voilà à quoi pourrait ressembler un appel à setLookAndFeel en Objective C:

    Code Obj-C : Sélectionner tout - Visualiser dans une fenêtre à part
    [UIManager setLookAndFeel: [[MetalLookAndFeel alloc] init]];

    Y'a plus ressemblant.

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 171
    Points : 163
    Points
    163
    Par défaut
    Merci beaucoup pour ces réponses. J'essaie tout cela ce soir et je vous tiens au courant.

    J'en apprends des choses!! A vrai dire, jusqu'à présent, je n'avais jamais eu à aller au delà de la JVM. Je programmais sur PC, et suis revenu au Mac le printemps dernier. La portabilité de java a été bonne jusqu'à ce que je veuille colorer mes boutons...

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 171
    Points : 163
    Points
    163
    Par défaut
    ça marche, ça marche!!

    Merci beaucoup, le MetalLookAndFeel fonctionne très bien, et il m'a été facile, Chatanga, d'adapter ton code.

    Merci encore à tous.

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

Discussions similaires

  1. Comment désactiver les actions automatiques de Windows ?
    Par j-phi dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 06/01/2005, 12h53
  2. [Serveur] Comment désactiver un "timeout" ?
    Par Johnbob dans le forum Plateformes (Java EE, Jakarta EE, Spring) et Serveurs
    Réponses: 4
    Dernier message: 04/12/2004, 01h24
  3. [Warning] comment désactiver un Warning précis?
    Par bigboomshakala dans le forum MFC
    Réponses: 5
    Dernier message: 01/06/2004, 16h07
  4. Réponses: 8
    Dernier message: 24/07/2003, 10h45
  5. Comment désactiver Ctrl+Alt+Del sous Windows XP
    Par ETOKA dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 04/06/2003, 13h34

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