2017-11-01 23 views
0

SkipBtnがクリックされたときに、私は(それが作成された)私のプログラムは、第二のフォームを開くようにしたいが、IntelliJのは、このエラーがスローされます。のJava:メソッドを解決できません「setVisible(boolean)に」

Error:(24, 19) java: cannot find symbol symbol: method setVisible(boolean) location: variable pw of type com.timeforbreak.PasswordWindow

私のコード:

import javax.swing.*; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 

public class BreakWindow { 
    private JButton skipBtn; 
    private JPanel breakWindow; 

    public static void main(String[] args) { 
     JFrame frame = new JFrame("BreakWindow"); 
     frame.setContentPane(new BreakWindow().breakWindow); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.pack(); 
     frame.setVisible(true); 
    } 

    public BreakWindow() { 
     skipBtn.addActionListener(new ActionListener() { 
      @Override 
      public void actionPerformed(ActionEvent e) { 
       PasswordWindow pw = new PasswordWindow(); 
       pw.setVisible(true); 
      } 
     }); 
    } 


} 

=================================

package com.timeforbreak; 

import javax.swing.*; 

public class PasswordWindow extends BreakWindow { 
    private JTextField password; 
    private JPanel passwordWindow; 

    public static void main(String[] args) { 
     JFrame frame = new JFrame("PasswordWindow"); 
     frame.setContentPane(new PasswordWindow().passwordWindow); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.pack(); 
     frame.setVisible(true); 
    } 
} 

答えて

0

あなたのフレームでありますmetの外部にアクセスできないローカル変数hodはJFrameフレームのグローバル変数を作成しようとします。 BreakWindow拡張

PasswordWindow pw = new PasswordWindow(); 

public class PasswordWindow extends BreakWindow 

しかしBreakWindowがあなたの最初のクラスでmainメソッド外

宣言JFrame frame;とあなたがPasswordWindow作成している

+0

どうすればいいですか?私はJavaが初めてです。 – Alina

+0

答えを編集しました –

0

mainメソッド内でそれを初期化mainであり、そのような方法はありませんsetVisible(boolean)

あなたBreakWindowJFrameを拡張する必要がありますし、あなたがそうすることができます。

public static void main(String[] args) { 
    JFrame frame = new BreakWindow("BreakWindow"); // was JFrame 

は、あなたの BreakWindowクラスにconstuctorを対応する挿入部を覚えていません。

関連する問題