0
これは私のコードです。 Check1 Labelに問題がありました。なぜなら、カードレイアウトを使用しているのと同様に、Answerが正しいときにVisibleにしたいからです。 は私がいない重要なコード 他のクラスのJLabelをどのように設定するのですか
public class Category1 extends JPanel {
public static JLabel Check1;
public Category1() {
Check1 = new JLabel(newImageIcon(getClass().getResource("Buttons/Check.png")));
Check1.setBounds(75 , 305, 40, 40);
Check1.setVisible(false);
add(Check1);
}}
を削除し、ここにあなたがSubmit1ボタンをクリックすると、他のクラスだし、JTextFieldの内のテキストが正しい場合、私はCHECK1ボタンが見えるようにしたいです。
public class QuizPanelc1 {
JPanel Quiz1;
JTextField Answer1;
JButton Submit1;
public QuizPanelc1(){
Answer1 = new JTextField();
Answer1.setBounds(180, 480, 200, 40);
Quiz1.add(Answer1);
Submit1 = new JButton(new ImageIcon(getClass().getResource("Buttons/SubmitButton.png")));
Submit1.setBounds(390, 480, 40, 40);
Quiz1.add(Submit1);
ButtonHandler1 events1 = new ButtonHandler1();
Submit1.addActionListener(events1);
Back1.addActionListener(events1)
}
private class ButtonHandler1 implements ActionListener {
public void actionPerformed (ActionEvent eventClick) {
Object event = eventClick.getSource();
Category1 c1 = new Category1();
if(Submit1==event)
{
if(Answer1.getText().equalsIgnoreCase("Fila"))
{
Answer1.setEditable(false);
JOptionPane.showMessageDialog(null, "Correct");
c1.Check1.setVisible(true);
}
else
{
JOptionPane.showMessageDialog(null, "Wrong Answer");
}
}
else
{
System.exit(1);
}
}}
こんにちは、私はJLabel Check1クラスのフィールドを作成します。他のクラスでは、私はsetCheck1Visibilityというパブリックメソッドを呼び出し、それをtrueに設定します。 if(Answer1.getText()。equalsIgnoreCase( "Fila")) { Answer1.setEditable(false); c1.setCheck1Visibility(true); JOptionPane.showMessageDialog(null、 "Correct"); } でもまだ表示されていません – Mashiro
すべてがOK * okであればチェックする必要があります。 –
カテゴリ1でsetCheck1Visibility(true)にCheck1を設定すると問題ありませんが、 QuizPanelc1でi c1.setCheck1Visiblity(true)を実行すると、動作していないか、または表示されません。 – Mashiro