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

avec Java Discussion :

Chat avec interface


Sujet :

avec Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 29
    Points
    29
    Par défaut Chat avec interface
    Bonjour,

    J'ai lu quelques tutoriaux sur les sockets et sur Swing, et j'ai voulu faire un test de tout ça, en creant un Chat avec interface, pour ça j'ai crée 3 classes, l'interface, le socket serveur et le socket client.

    Mais mon GUI me parait vide quand je lance le programme !!
    voici le code de mes 3 classes, (puisque je compte pas encore mettre ça dans le marché), comme ça vous pouvez testez vous même, je crois Le soucis est dans la class ClientSocket, parce qu'elle demande l'accès a textArea qui parait déjà occupé.

    Server: http://pastebin.com/jQ2AkUjF
    ClientSocket: http://pastebin.com/YugiKFJX
    L'interface: http://pastebin.com/PdL5YEB2


    J'espère pouvoir avoir de l'aide en discutant ici, j'aimerais bien apprendre des nouveaux trucs !! Merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 351
    Points : 432
    Points
    432
    Par défaut
    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
    import javax.swing.* ;
    import java.net.* ;
    import java.awt.* ;
    import java.awt.event.* ;
    import java.io.* ;
     
    public class ClientJFrame1 implements ActionListener {
     
        JFrame frame ;
        JPanel chatPanel ;
        JPanel inputPanel ;
        JTextField textField ;
        JTextArea textArea ;
        JButton button ;
        //ClientSocket clientSocket ;
     
        public ClientJFrame1(){
    	// Create and set up the window of chat
    	frame = new JFrame("Chat Window") ;
    	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;
    	frame.setSize(new Dimension(300, 200)) ;
     
    	// Create and set up the panels
    	chatPanel = new JPanel( new BorderLayout() ) ;
    	inputPanel = new JPanel( new BorderLayout() ) ;
     
    	// Add widgets
    	addWidgets() ;
     
    	// Add the panel to the window
    	frame.getContentPane().add(chatPanel, BorderLayout.CENTER) ;
    	// frame.getContentPane().add(inputPanel, BorderLayout.SOUTH) ;
     
    	// Set the window visible
    	frame.setVisible( true ) ;
        }
     
     
        private static void createAndShowGUI(){
    	// Create a ClientChat class
    	ClientJFrame1 client = new ClientJFrame1() ;
    	ClientSocket clientSocket = new ClientSocket(client.textArea) ;
        }
     
        private void addWidgets(){
    	textField = new JTextField() ;
    	textArea = new JTextArea() ;
    	button = new JButton("Send") ;
    	textArea.setEditable(false) ;
     
    	inputPanel.add(textField, BorderLayout.CENTER) ;
    	inputPanel.add(button, BorderLayout.EAST) ;
     
    	chatPanel.add(new JScrollPane(textArea), BorderLayout.CENTER) ;
    	chatPanel.add(inputPanel, BorderLayout.SOUTH) ;
     
    	chatPanel.setBorder(BorderFactory.createEmptyBorder(10,10,10,10)) ;
     
    	// Add listeners to the button and the textField
    	button.addActionListener(this) ;
    	textField.addActionListener(this) ;
        }
     
        public void actionPerformed(ActionEvent e){
    	textArea.append(textField.getText() + "\n") ;
    	ClientSocket.sendOut(textField.getText(), textArea) ;
    	textField.setText("") ;
        }
     
        public static void main( String[] args ){
    	javax.swing.SwingUtilities.invokeLater( new Runnable() {
    		public void run(){
    			createAndShowGUI() ;
    		}
    	}) ;
        }
    }
    Efface cette méthode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    private static void createAndShowGUI(){
    	// Create a ClientChat class
    	ClientJFrame1 client = new ClientJFrame1() ;
    	ClientSocket clientSocket = new ClientSocket(client.textArea) ;
        }
    Et dans ton main tu remets le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public static void main( String[] args ){
    	ClientJFrame1 client = new ClientJFrame1() ;
    	ClientSocket clientSocket = new ClientSocket(client.textArea) ;
     }

Discussions similaires

  1. Réaliser un Chat avec support IP
    Par Sub0 dans le forum Développement
    Réponses: 12
    Dernier message: 14/07/2006, 10h59
  2. Le chat (avec les sockets) sans frames.
    Par azmeuk dans le forum Langage
    Réponses: 1
    Dernier message: 18/10/2005, 19h47
  3. pbl avec interface
    Par Bason_sensei dans le forum MFC
    Réponses: 1
    Dernier message: 11/10/2005, 15h50
  4. service NT avec interface (IHM)
    Par cash3000 dans le forum Windows
    Réponses: 14
    Dernier message: 06/06/2005, 09h23
  5. Application multiplateforme avec interface graphique
    Par TNorth dans le forum Choisir un environnement de développement
    Réponses: 2
    Dernier message: 31/01/2004, 18h55

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