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 :

manipuler une Vue avec une autre classe


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 14
    Par défaut manipuler une Vue avec une autre classe
    Bonjour,
    J'ai cherché la réponse à mon problème partout, je m'excuse par avance si la question à déjà été posé.

    J'ai une class appelée VueAdmin qui me creer une petite fenetre avec label, textfield et bouton, pour l'instant tout va bien.

    Je dois maintenant ajouter un TextArea qui va afficher des message lorsque l'on appuie sur le bouton valider.

    Le problème c'est que le TextArea je dois le faire dans une autre classe se trouvant dans un autre package(ou le meme si c'est plus simple, je peux deplacer la classe), c'est une classe qui contient une fonction me permettant d'avoir les fameux messages

    Voici la fameuse classe ou je dois mettre le TextAréa
    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
     
    public class Message extends VueAdmin implements IDartyMoneticCallBack{
     
    	private static VueAdmin lavue = new VueAdmin(); 
    	private static TextArea reponse;
     
     
    	 public Message(){
     reponse = new TextArea("",10,10,TextArea.SCROLLBARS_HORIZONTAL_ONLY);
    			lavue.add(reponse, BorderLayout.CENTER);			
     
    	}	
    public int display(MoneticMessageDisplay message) {		
    		System.out.println(message);
    		return 0;
    	}
    Je créé le TextArea dans le constructeur je l'ajoute à ma vue et ensuite je le modifie dans la fonction display...Ce que j'ai tenté ne marche pas, la textarea ne s'affiche pas.

    Petit remarque : je ne peux pas faire différemment, je suis en stage on m'a dit de creer le TextAréa dans le constructeur.

    Je met le code de ma vue si sa peut servir (J'ai mis new message dans le constructeur pour qu'il prenne en compte l'ajout de la textarea mais je ne sais pas vraiment ou le mettre):

    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
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
     
    public class VueAdmin extends Frame{
     
     
    		private static VueAdmin laVue;	
    		private Administration administration;
    		private Label texte;	
    		private Label nom;
    		private Label tpv;
    		private Panel haut;
    		private Panel champs;
    		private Panel boutton;		
    		private Button valider;
    		private Button quitter;
    		private Image icone;
    		private static TextField textNom;
    		private static TextField textTPV;
    		//private static TextArea reponse;
    		private Panel centre = new Panel();
    		private Panel champs2 = new Panel();
     
     
     
     
    		public VueAdmin(Administration modeleTotalisateur,Controleur_init leControleur, String titre1)
    		{
     
     
    		//1.Création de la vue
    			modeleTotalisateur = administration;
    			laVue = this;
    			setTitle(titre1);
    			Font fonte = new Font("Arial",Font.PLAIN,14);
    			laVue.setFont(fonte);
    			laVue.setResizable(false);
     
     
    		//2.creation des composants de la vue
    			//Création Label
    			texte=new Label("Veuillez entrer les informations suivantes :", Label.CENTER );
    			textNom= new TextField(15);
    			nom= new Label ("Nom de l'ordinateur", Label.CENTER);
    			tpv= new Label ("Numéro TPV", Label.CENTER);
    			Font fonte3 = new Font ("Arial", Font.BOLD,12);
    			texte.setFont(fonte3);
    			nom.setFont(fonte3);
    			tpv.setFont(fonte3);
     
     
    			//Création des panel
     
    			textTPV = new TextField(8);
    			haut=new Panel();
    			champs=new Panel();
    			champs2=new Panel();
    			boutton=new Panel();
     
    			//Création des boutons
    			valider=new Button("Valider");
    			quitter=new Button("Quitter");		
     
    		//3.organisation des composants dans la fenetre
    			haut.setLayout(new FlowLayout(0,165,10));
    			centre.setLayout(new FlowLayout(0,10,0));
    			champs2.setLayout(new GridLayout(2,1));
    			champs.setLayout(new FlowLayout(0,45,25));			
    			boutton.setLayout(new FlowLayout());
     
     
    		//4.Attachage des composant				
    			haut.add(texte);
    			centre.add(nom);
    			centre.add(textNom);
    			centre.add(tpv);			
    			centre.add(textTPV);
    			champs2.add(haut);
    			champs2.add(centre);
    			boutton.add(valider);
    			boutton.add(quitter);
    			add(champs2,BorderLayout.NORTH);
    			add(boutton,BorderLayout.SOUTH);
     
    			//mise en page
    			Color gris=new Color(192,192,192);
    			laVue.setBackground(gris);
    			texte.setBackground(gris);		
     
    			Dimension dim = new Dimension (600, 200);			
    			laVue.setSize(dim);
     
    			icone = Toolkit.getDefaultToolkit ().getImage ("C:/Documents and Settings/dsa139/workspace/Totalisateur/src/logo-darty.jpg");
    			this.setIconImage (icone);
     
    		//5. mise en place des reactions
     
    			quitter.addActionListener(leControleur);
    			valider.addActionListener(leControleur);
    			addWindowListener(leControleur);
     
     
     
    		//6. phase final			
    			pack();
    			setLocationRelativeTo(null);
    			setVisible(true);
               // A placer ici????
                          new Message();
     
     
    		}
     
    		public VueAdmin() {
    			// TODO Auto-generated constructor stub
     
    		}
    Merci à tous!

  2. #2
    Membre expérimenté
    Profil pro
    Dev NodeJS
    Inscrit en
    Août 2006
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev NodeJS

    Informations forums :
    Inscription : Août 2006
    Messages : 177
    Par défaut
    Salut,

    tu crées bien le textarea mais tu ne l ajoute nulle part à ta fenetre!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public class Message extends VueAdmin implements IDartyMoneticCallBack{
    ...
        public TextArea getResponse(){
            return response;
        }
    }
    Et dans ta création de frame:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Message message = new Message();
    add(message.getResponse());

  3. #3
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 14
    Par défaut résolu merci!
    Alors toi je t'aime!!
    C'était tout con!

    Merci, merci, merci ,merci 100000 fois

    J'avais essayé 30000 trucs!!


    Je bosse un 2 mai y a presque personne au boulot!
    Démoralisant!

    Merci encore !!!
    rien que pour toi

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  3. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  4. Créer une vue dans une base vers une autre base ?
    Par guidav dans le forum Requêtes
    Réponses: 1
    Dernier message: 11/02/2008, 15h43
  5. Créer une vue avec une image au format postscript *.eps
    Par pobsteta dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 22/11/2007, 15h12

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