[b]Eu estou em duvida sobre o JFrame, sou iniciante em Java, eu nao entendo básicamente como fazer para que mensagens apareçam dentro dele, eu estou fazendo direto das variaveis, existem formas especificas para se fazer isto?
[color=red] Nota: Já li em livros e apostilas mais mesmo assim eu nao compreendo como fazer-lo[/color][/b]
Como assim mensagens, você quer escrever textos dentro do JFrame ou você está falando de mensagens de diálogos para o usuário, se for Dialogs você faz assim:
javax.swing.JOptionPane.showMessageDialog(meuFrame, "Minha mensagem");
Se você quiser desenhar e escrever dentro do Frame você pode adicionar um JPanel dentro do JFrame e sobrescreva o método paintComponent() do Jpanel, ficaria mais ou menos assim :
public class Painel extends javax.swing.JPanel {
public Painel() {
}
public void paintComponent( Graphics g )
{
super.paintComponent( g ); //limpa a área de desenho
//aqui vc faz os desenhos
g.drawString("Meu texto", 100, 100);
}
}
O jeito mais correto pra “escrever” texto no JFrame seria por meio de JLabel, por exemplo :
import javax.swing.*;
public class Teste extends JFrame {
public Teste() {
JPanel panel1 = new JPanel();
JLabel label1 = new JLabel("Ola!!!");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel1.add(label1);
add(panel1);
pack();
setVisible(true);
}
public static void main(String[] args) {
new Teste();
}
}
Claro que existem casos que vc precisa implementar o paintComponent e fazer igual o amigo acima indicou, mas por exemplo se vc quiser fazer um Frame que cadastra usuario por exemplo, mais pratico criar os JLabels e ir posicionando no JFrame.
Posicionamento no JFrame ja sao outros quinhetos tb, da uma olhada no GridBagLayout (que na minha opiniao eh o mais eficiente).
//Daniel