Zeigen Sie Text in einer Beschriftung einer anderen Klasse an - JFrame
Ich habe einen GUI-Bildschirm, auf dem sich eine Beschriftung befindet. Ich möchte jetzt die Beschriftung mit einem Text setzen, wie ich unten gezeigt habe (Test
). Aber es wird nicht aktualisiert. Ich denke, dass es einen Fehler im folgenden Code gibt, in dem ich ein neues Objekt von FrameTest im Versuchblock wieder herstelle;
FrameTest frame = new FrameTest();
frame.setVisible(true); //(the full code given below)
Der vollständige Code: Hinweis: Die folgende Klasse ist erweitert vonJFrame
import java.awt.BorderLayout;
public class FrameTest extends JFrame {
private JPanel contentPane;
private JLabel lblLabel;
public void mainScreen() {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
FrameTest frame = new FrameTest();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public void writeLabel(String k){
this.lblLabel.setText(k);
}
public FrameTest() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
lblLabel = new JLabel("LABEL");
contentPane.add(lblLabel, BorderLayout.CENTER);
}
}
Testklasse
public class Test {
public static void main(String[] args) {
FrameTest f = new FrameTest();
f.mainScreen();
f.writeLabel("FFFFF");
}}
Hilfe, wie bekomme ich Text"FFFFF"
auf dem Etikett angezeigt?