// MainWindow.java import java.awt.BorderLayout; import javax.swing.*; import javax.swing.plaf.DimensionUIResource; public class MainWindow extends JFrame { private static final String defaultTitle = "長い処理で固まらないウインドウのサンプル!?"; private static final DimensionUIResource defaultSize = new DimensionUIResource(255, 255); public MainWindow() { setTitle(defaultTitle); setSize(defaultSize); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // テキストフィールドをウインドウに配置 JTextField txt = new JTextField(); getContentPane().add(txt, BorderLayout.SOUTH); // ボタンをウインドウに配置 JButton button = new JButton("Push Me!"); button.addActionListener(new MyButtonListener(this)); getContentPane().add(button, BorderLayout.CENTER); } }