eu sou novo no java, eu criei uma janela com o seguinte código
import java.awt.Color;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
public class solojob {
public static void main(String[] args) {
JLabel label = new JLabel("ola, sou uma janela em Java.", JLabel.CENTER);
label.setFont(new Font("Calibri", Font.BOLD, 40));
label.setForeground(Color.white);
// Janela
JFrame janela = new JFrame();
janela.setSize(700, 700);
janela.getContentPane().setBackground(new Color(200, 30, 50));
janela.add(label);
janela.setVisible(true);
}
}
eu nao sei como fazer um System.out.println na janela.
Isso não é o tipo de coisa que vc faz ao usar uma janela do java swing. Geralmente vc usa um JLabel
para apresentar o texto na tela. Pode ser um JLabel
, JTextField
, etc.
System.out.println
é geralmente usado para apresentar informações no console mesmo.
System.out
e System.err
são saídas para o SO, só é possível visualizar via console.
Para imprimir informações em telas com Swing você pode utilizar as sugestões que o @Lucas_Camara respondeu acima ou utilizar um JOptionPane
.
@Jonathan_Medeiros verdade mano. Nem tava lembrando do JOptionPane
. Parece ser a melhor opção para ele nesse caso.
1 curtida
Como os rapazes @Lucas_Camara e @Jonathan_Medeiros falaram, se tu quiser exibir ao usuário a mensagem através de uma POO, deverá usar os mais diversos métodos como .setText() em um jLabel, jTextField, jTextArea e por aí vai… (Como tu fez em seu jLabel)
Se eu entendi bem, seu objetivo é “exibir ao usuário uma mensagem e/ou trabalhar com um suposto dialogo entre ambos” , que se torna mais prático (agora de inicio) a utilização do jOptionPane.
Para utilizar o jOptionPane em seu código faça:
String resp = jOptionPane.showImputDialog("Qual o seu nome?");
E assim você poderá trabalhar com ele em diversas situações, como caixa de diálogos, mensagens de erros, solicitar informação (como está acima solicitando o nome) e por aí vai.
No link a seguir está agregado todas suas funcionalidades de forma simples: Javax.Swing.JOptionPane – Conhecendo e utilizando a classe JOptionPane | Bruno Augusto (wordpress.com)
Ou se preferir, pode ver diretamente sua documentação na Oracle:
JOptionPane (Plataforma Java SE 7 ) (oracle.com)
Espero ter ajudado 
Você também pode estender um OutputStream
e sobrescrever os métodos para “imprimir” em um TextComponent qualquer.
Aí basta fazer um System.setOut
passando um objeto desse OutputStream
especializado.