Also mit Rückgabewerten hab ich das so mal gebastelt.
[code=Java]import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class ChatGui {
private final JTextArea myText = new JTextArea(3,30);
private final JTextArea otherText = new JTextArea();
private ImageIcon myIcon = new ImageIcon("Penguins.jpg");
private JPanel createotherTextPanel(){
JPanel otherTextPanel = new JPanel(new BorderLayout());
otherTextPanel.setBorder(BorderFactory.createTitledBorder("Nachrichtenverlauf"));
JScrollPane scrollbar = new JScrollPane(otherText);
otherText.setLineWrap(true);
otherText.setEditable(false);
otherTextPanel.add(scrollbar, BorderLayout.CENTER);
return otherTextPanel;
}
private JPanel createmyTextPanel(){
JPanel myTextPanel = new JPanel(new BorderLayout());
myTextPanel.setBorder(BorderFactory.createTitledBorder("Nachricht"));
JScrollPane scrollbar1 = new JScrollPane(myText);
myTextPanel.add(scrollbar1,BorderLayout.CENTER);
myText.setLineWrap(true);
return myTextPanel;
}
private JPanel createsendButtonPanel(){
JPanel sendButtonPanel = new JPanel(new BorderLayout());
//sendButtonPanel.setBorder(BorderFactory.createTitledBorder("Senden"));
JButton senden = new JButton("Senden");
sendButtonPanel.add(senden,BorderLayout.EAST);
senden.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent arg0) {
System.out.println("Senden");
}
});
return sendButtonPanel;
}
private JPanel createiconPanel()
{
JPanel iconPanel = new JPanel(new BorderLayout());
JLabel iconLabel = new JLabel(new ImageIcon("Penguins.jpg")); // Wieso gibts hier eigentlich kein Bild im Frame?
iconPanel.add(iconLabel,BorderLayout.NORTH);
return iconPanel;
}
private JFrame createFrame(){
JFrame frame = new JFrame();
frame.add(createotherTextPanel(),BorderLayout.CENTER);
frame.add(createmyTextPanel(),BorderLayout.NORTH);
frame.add(createsendButtonPanel(),BorderLayout.SOUTH);
frame.add(createiconPanel(),BorderLayout.EAST);
frame.setSize(500,400);
frame.setLocationRelativeTo(null);
return frame;
}
public static void main(String[] args){
ChatGui gui = new ChatGui();
JFrame main = gui.createFrame();
main.setVisible(true);
main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
[/code]
MfG