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

Java ME Discussion :

JDialog et affichage sur J2ME CDC


Sujet :

Java ME

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 4
    Par défaut JDialog et affichage sur J2ME CDC
    Bonjour,

    Voilà je développe une application pour mon stage en J2ME CDC, à l'aide de Netbeans 6.5 et du kit de développement CrEme. Cette application doit interagir avec l'utilisateur et donc utiliser certaines boites de dialogues.

    Mon problème est que la taille d'une JOptionPane est trop grande pour la résolution de mon écran et apparemment il est impossible de changer la taille d'une JOptionPane.

    J'ai vu qu'une alternative était de passé par une JDialog. Mon vrai problème vient en fait que je ne sais pas afficher un élément graphique à l'écran si au préalable je ne l'ai pas créer à l'aide du mode Design de Netbeans(drag & drop d'élément Swing ou Awt). Par exemple ceci ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    import javax.swing.*;
    public class MyJFrame extends JFrame{
    private JButton ok;
     
    public JFrame(){
    this.ok = new JButton("OK");
    this.add(ok);
    }
    }
    Il faut pour que le bouton s'affiche que je passe par le mode design le drag&drop sur la fenetre puis seulement je peux décider quelle action ou param je mets dessus.

    Quelqu'un aurait déjà eu le problème? Il y a t'il un moyen d'éviter ca?

    Merci de votre temps,

    Pierre.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut
    Salut,

    Ton problème n'est pas directement lié à la JVM CrE-Me. C'est juste au niveau de swing que ça coince.

    Essaye ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    import javax.swing.*;
    public class MyJFrame extends JFrame{
       private JButton ok;
     
       public MyJFrame(){
          this.ok = new JButton("OK");
          this.add(ok);
          this.pack();
       }
    }

  3. #3
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 4
    Par défaut
    Bien c'est possible que ce soit à cause du swing mais la méthode pack() ne change rien...

    De plus en créant un formulaire CrEme, il génère automatiquement un layout qui permet d'ajouter les composant en rapport avec ce qui a été dropper sur le mode Design, et il fait automatiquement aussi un this.pack().

    J'ai contourné le problème en faisant une formulaire CrEme héritant de JDialog, et ensuite j'appelle son constructeur dans le code...

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut
    Oups c'est vrai que j'avais oublié un petit truc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    import javax.swing.*;
     
    public class MyJFrame extends JFrame{
       private JLabel ok;
     
       public MyJFrame(){
          this.ok = new JLabel("test");
          this.getContentPane().add(ok);
          this.pack();
       }
    }
    Quand tu ne mets pas "getContentPane()", CrE-Me t'insulte dans le jscpout.txt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    java.lang.Error: Do not use test.MyJFrame.add() use test.MyJFrame.getContentPane().add() instead
    	at javax.swing.JFrame.createRootPaneException()
    	at javax.swing.JFrame.addImpl()
    	at java.awt.Container.add()
    	at test.MyJFrame.<init>()
    	at com.keyneosoft.keyshopping.keyscan.Keyshopping.<init>()
    	at com.keyneosoft.keyshopping.keyscan.Keyshopping.main()

  5. #5
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 4
    Par défaut
    Effectivement tu as raison!

    Ça fonctionne quand j'utilise le contentPane(), un tout grand merci pour ton temps et cet éclaircissement!

    Pierre.

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

Discussions similaires

  1. affichage sur ouverture d'un formulaire
    Par DurDur dans le forum Access
    Réponses: 4
    Dernier message: 04/09/2005, 11h31
  2. [debutant]affichage sur le meme niveau
    Par christophebmx dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 10/02/2005, 15h34
  3. Probleme bizarre d affichage sur une radeon 9200 SE
    Par venomelektro dans le forum OpenGL
    Réponses: 6
    Dernier message: 03/12/2004, 10h11
  4. Réponses: 2
    Dernier message: 09/10/2004, 11h35
  5. DBGrid - Affichage sur 2 colonnes
    Par Grouik dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/04/2004, 17h37

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