このプログラムにはさまざまな画面があります (JPanels で表されます)。画面が開くたびに、そのパネルを再構築し、JFrame
.
これで、初めてパネルを作成して (常に同じ機能)、ボタンを押すと、それに添付されたコードが実行されます。画面を再構築するeventSource
と、 が実際の と等しくなることはありませんeventSource
。
コードを参照してください:
public class NewUserScreen extends JPanel implements MouseListener{
//SButton inherits from Component
SButton sb;
...
public void SetFields(){
removeAll();
revalidate();
repaint();
...
sb = new SButton(new Point(282, 295), "Save");
sb.addMouseListener(this);
add(sb);
...
}
...
@Override
public void mouseReleased(MouseEvent arg0) {
if(arg0.getSource().equals(sb)){
DBManager.addUser(...);
}else{
//So after the 2nd build, it will always run this code :(
ScreenManager.OpenAdminS();
}
}
}