Я написал небольшую программу для создания простого графического интерфейса с панелями с вкладками. В настоящее время он имеет две вкладки. На одной из вкладок я создал кнопку, а на другой вкладке я создал две кнопки (на основе строки в третьем классе). Чего я не могу сделать, так это внутри второй вкладки, которую я хочу создать две вкладки (" один" и "два", указанные в коде), а две кнопки, которые в настоящее время находятся на вкладке, должны присутствовать на каждой из дополнительных вкладок. Может ли кто-нибудь сказать мне, как я могу этого добиться?
основной класс: abc.java
public class abc {
JFrame frame;
JTabbedPane tabPane;
abc_export exp;
bsm_import2 imp;
public static void main(String[] args) {
abc jtab = new abc();
jtab.start();
}
public void start(){
exp=new abc_export();
imp=new bsm_import2();
tabPane.addTab("bsm_export", exp.tab);
tabPane.addTab("bsm_import2", imp.tab);
}
public abc() {
// Create a frame
frame = new JFrame();
// Create the tabbed pane.
tabPane = new JTabbedPane();
//Adding into frame
frame.add(tabPane, BorderLayout.CENTER);
frame.setSize(300, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
Второй класс: abc_export.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class abc_export {
JPanel tab;
public abc_export() {
//Adding into frame
tab = new JPanel();
JButton btn=new JButton("run");
tab.add(btn);
tab.setOpaque(false);
}
};
третий класс: bsm_import2.java (здесь мне нужно внести изменения для создания дополнительных вкладок)
import javax.swing.*;
import java.awt.*;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.*;
import java.util.StringTokenizer;
import java.util.*;
import java.awt.event.*;
public class bsm_import2 {
public static JPanel tab;
public bsm_import2()
{
createAndShowGUI();
}
private static void createAndShowGUI() {
tab=new JPanel();
tab.setLayout(new GridLayout(3,2));
String line="tab1#one tab2#two";
String strAry[] = line.split(" ");
JButton Button[]=new JButton[100];
final Map<String, String> map = new HashMap<String, String>();
for(int i =0; i < strAry.length ; i++){
String[] parts = strAry[i].split("#");
map.put(parts[0],parts[1]);
Button[i] = new JButton(parts[0]);
tab.add(Button[i]);
tab.setOpaque(false);
}
for ( String key : map.keySet() ) {
System.out.println( key );
}
}
}