次のアプリケーションがあります。それは機能します、私はそれをよりよく理解しようとしています。
したがって、メインクラスから次の呼び出しを行います
public static void main(String[] args)
{
Gui gui = new Gui();
gui.startGui();
}
GUIクラスで
public Gui()
{
initialize();
}
private void initialize()
{
mainWinFrm = new JFrame();
mainWinFrm.setTitle("Inventory Tool");
JMenuBar menuBar = new JMenuBar();
mainWinFrm.getContentPane().add(menuBar, BorderLayout.NORTH);
.....//allot more GUI staff getting initialize
}
public void startGui()
{
try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}
catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {}
EventQueue.invokeLater(new Runnable()
{
public void run()
{
try
{
Gui window = new Gui();
window.mainWinFrm.setLocationRelativeTo(null);
window.mainWinFrm.setMinimumSize(new Dimension(400, 200));
window.mainWinFrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.mainWinFrm.pack();
window.mainWinFrm.setVisible(true);
}
catch (Exception e)
{e.printStackTrace();}
}
});
}
上記のコードの構造は GUI ビルダーによって構築されたものであり、何が起こっているのかを理解しようとしていると思います。
私が理解していない主なポイントは、メインクラスでオブジェクトguiを構築すると、すべての変数が初期化され、スレッドgui.startGui()が開始され、そのメソッドも新しい GUI オブジェクトウィンドウを作成し、すべての変数を初期化することです。
これは私には正しくないように思えます...しかし、何かが欠けているかどうかはわかりません。
アドバイス/ヘルプアレクシスをありがとう