私はcomboBox
を作成したプログラムを作成していましたが、それをクリックするとフレームが表示されるようにactionlistener
を追加しています。このコードを簡単に書く方法はありますか?
コード:
String menulist [] = {"", "Array", "BubbleSort" ," - Selection Sort"," - Insertion Sort"," - Merge Sort","Recursion"," - Factorial"," - Anagramming"," - Towers of Hanoi","Stacks","Trees"," - Types of Trees","Binary Tree","Shell Sort","Quick Sort","Hash Table","Graphs"};
final JComboBox SelectMenu = new JComboBox(menulist);
SelectMenu.setFont(new Font("Tahoma", Font.PLAIN, 17));
SelectMenu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int list = SelectMenu.getSelectedIndex();
if(list == 1){
//Array
JFrame frameArray = new JFrame();
frameArray.setBounds(100, 100, 830, 601);
frameArray.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frameArray.getContentPane().setLayout(null);
frameArray.setVisible(true);
JLabel lblArray = new JLabel("Array");
lblArray.setFont(new Font("Lucida Bright", Font.BOLD | Font.ITALIC, 25));
lblArray.setBounds(368, 63, 122, 41);
frameArray.getContentPane().add(lblArray);
JLabel AnArrayIs = new JLabel();
AnArrayIs.setBackground(Color.WHITE);
AnArrayIs.setText("An array is a systematic arrangement of similar objects, usually in rows and columns.");
AnArrayIs.setBounds(46, 103, 357, 432);
frameArray.getContentPane().add(AnArrayIs);
その場合には、私があれば、ほぼ16例の多くのを使用しているならば、他の私が使用してしまいます。フレームのコードを短く書く方法はありますか?だから私はちょうど16のインデックスまで、if - elseを続けていますか?
ありがとうございます! (:
[CardLayoutを使用する方法](http://docs.oracle.com/javase/tutorial/uiswing/layout/card.html) – MadProgrammer