メインのjframeメニューにリストされたボタン用にアクションリスナーを設定しましたが、それらは正常に機能し、必要に応じて他のjframeを表示します。問題は、人が表示されたjframeのボタンをクリックすると、そのサブメニューjframeでjbuttonがクリックされた後にnullexceptionが発生することです。
コード例:
public class main extends JFrame implements ActionListener
{
public main
{
private JButton thisButton = new JButton( "this" );
private JButton thatButton = new JButton( "that" );
thisButton.addActionListener( this );
thatButton.addActionListener( this );
thisButton.setActionCommand( "THISBUTTON" );
thatButton.setActionCommand( "THATBUTTON" );
setLayOut( new FlowLayout() );
add(thisButton);
public void actionPerformed( ActionEvent event )
{
String source = event.getActionCommand();
if( source.equals( "THISBUTTON" )
{
JFrame thisFrame = new JFrame();
thisFrame.add( thatButton );
if( source.equals( "THATBUTTON" )
{
System.out.println( "pushed thatbutton" );
}
}
}
}
}
これで、内側の jbutton に別のアクションリスナーを設定する必要があることはほぼ確実ですが、その方法がわかりません。