Swing UI の開発をより迅速かつ管理しやすくするために、Factory Method パターンの使用を検討しています。
一般に、JInternalFrames を使用する MDI アプリケーションです。システムには多くの設定、いわゆるタイプがあります (例: userTypes、accountTypes など)。使用することに決めた固定 UI があります。システムにはこれらのタイプが 50 以上あるため、ファクトリ メソッド パターンが最も扱いやすいソリューションのようです。以下は、動作中のアプリの 2 つのスクリーンショットです。
[この例][3] を見ていましたが、すべての情報をレコードに保存するために必要なタブの数を見積もることができないため、複数のタブとコントロール (ラベル、テキスト ボックス) を追加できる必要があります。 、テーブル、コンボボックスなど) これらのタブ内。
例に基づいて、抽象クラスで JTabbedPane を作成し、サブクラスで変更および追加することは可能ですか? 私は次のことを試しましたが、少し迷っています:
public AbstractTypeInternalFrame(String title) {
setBounds(100, 100, 808, 589);
JToolBar toolBar = new JToolBar();
getContentPane().add(toolBar, BorderLayout.NORTH);
JButton btnAdd = new JButton("Add");
toolBar.add(btnAdd);
JButton btnSave = new JButton("Save");
btnSave.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
toolBar.add(btnSave);
JButton btnDelete = new JButton("Delete");
toolBar.add(btnDelete);
JButton btnCancel = new JButton("Cancel");
btnCancel.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
toolBar.add(btnCancel);
JTabbedPane recordTabs = new JTabbedPane(makeRecordTabPane());
getContentPane().add(recordTabs, BorderLayout.NORTH);
JSeparator recordSearchSeparator = new JSeparator();
getContentPane().add(recordSearchSeparator, BorderLayout.NORTH);
}
protected abstract int makeRecordTabPane();
メソッド makeRecordTabPane() では int を返す必要があります。
ご覧のとおり、私は少し道に迷っており、そのようなパターンをどのように進めるかについての指示が必要です。アドバイスや例/リンクさえあれば、それは大歓迎です。
私の質問があいまいであることは承知していますので、私の側で明確化が必要な場合は、お気軽にお尋ねください。
よろしくお願いします。