一套java swing框架
2017-02-10 16:47
330 查看
该框架对于喜欢swing的朋友来说非常有帮助,重用性高,下面展示部分主要代码,需要下载的朋友请到改地址下载:http://download.csdn.net/detail/qq_20932723/9751986
主框架代码:
package org.zjy.view;
import java.awt.BorderLayout;
@SuppressWarnings("serial")
public class MainView extends JFrame {
private JPanel contentPane;
@SuppressWarnings("unused")
private JScrollPane scrollPane_main;
@SuppressWarnings("unused")
private JTabbedPane tabbedPane_main;
@SuppressWarnings("unused")
private JPanel panel_main;
private JTextField textField;
public static JPanel panel;
public static JPanel panel_2;
public static JPanel panel_3;
public static JPanel panel_1;
ReportContentPanel pane=new ReportContentPanel();
DataBaseContentPanel r_pane=new DataBaseContentPanel();
SystemSetContentPanel s_pane=new SystemSetContentPanel();
MangerSetContentPanel m_pane=new MangerSetContentPanel();
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
// 装载可选择的主题
try {
javax.swing.UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (InstantiationException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (UnsupportedLookAndFeelException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
MainView frame = new MainView();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
@SuppressWarnings("deprecation")
public MainView() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 1073, 643);
JMenuBar menuBar = new JMenuBar();
menuBar.setBackground(SystemColor.activeCaption);
setJMenuBar(menuBar);
JMenu mnf = new JMenu("文件(F)");
menuBar.add(mnf);
JMenuItem mntme = new JMenuItem("编辑(E)");
mnf.add(mntme);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(2, 2, 2, 2));
setContentPane(contentPane);
contentPane.setLayout(new BorderLayout(2, 2));
panel = new JPanel();
contentPane.add(panel, BorderLayout.WEST);
panel.setLayout(new BorderLayout(0, 0));
panel.setPreferredSize(new Dimension(200,150));
JScrollPane scrollPane = new JScrollPane();
panel.add(scrollPane, BorderLayout.CENTER);
JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
scrollPane.setViewportView(tabbedPane);
panel_1 = new JPanel();
panel_1.setBackground(SystemColor.activeCaption);
tabbedPane.addTab("sog管理", null, panel_1, null);
panel_1.setLayout(new BorderLayout(0, 0));
JPanel panel_action = new JPanel();
panel_action.setBackground(SystemColor.inactiveCaption);
panel_1.add(panel_action, BorderLayout.NORTH);
GridBagConstraints gbc = new GridBagConstraints();
panel_action.setLayout(new GridBagLayout());
JPanel panels = new JPanel(); //
JPanel panels_r = new JPanel();
JPanel panels_s = new JPanel();
JPanel panels_m = new JPanel();
gbc.insets = new Insets(1,3,0,3);
gbc.weightx = 1.0;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.gridwidth = GridBagConstraints.REMAINDER;
panels = new JExpandablePanel("业务报表",pane,"report_1.png");
panels_r = new JExpandablePanel("数据库管理",r_pane,"dataBase.png");
panels_s = new JExpandablePanel("系统设置",s_pane,"system_2.png");
panels_m = new JExpandablePanel("管理员设置",m_pane,"manger.png");
panel_action.add(panels, gbc);
panel_action.add(panels_r, gbc);
panel_action.add(panels_m, gbc);
panel_action.add(panels_s, gbc);
JPanel panel_toolbar = new JPanel();
panel_toolbar.setBackground(SystemColor.controlHighlight);
contentPane.add(panel_toolbar, BorderLayout.NORTH);
panel_toolbar.setPreferredSize(new Dimension(0,32));
FlowLayout fl_panel_toolbar = new FlowLayout(FlowLayout.LEFT, 0, 0);
panel_toolbar.setLayout(fl_panel_toolbar);
final JToolBar toolBar = new JToolBar();
toolBar.setRollover(true);
toolBar.setOpaque(false);
toolBar.setPreferredSize(new Dimension(200,32));
toolBar.setBackground(Color.DARK_GRAY);
panel_toolbar.add(toolBar);
JButton btnNewButton = new JButton();
btnNewButton.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"yc.png"));
btnNewButton.setBackground(Color.DARK_GRAY);
toolBar.add(btnNewButton);
setStatusBar("admin");
final JPanel panel_m = new JPanel();
contentPane.add(panel_m, BorderLayout.CENTER);
panel_m.setLayout(new BorderLayout(0, 0));
JScrollPane scrollPane_m = new JScrollPane();
panel_m.add(scrollPane_m, BorderLayout.CENTER);
final JTabbedPane tabbedPane_m = new JTabbedPane(JTabbedPane.TOP);
tabbedPane_m.setBackground(SystemColor.inactiveCaption);
9d18
tabbedPane_m.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
scrollPane_m.setViewportView(tabbedPane_m);
panel_2 = new JPanel();
panel_m.add(panel_2, BorderLayout.WEST);
panel_2.setPreferredSize(new Dimension(30,0));
JToolBar toolBar_2 = new JToolBar();
toolBar_2.setBackground(Color.DARK_GRAY);
toolBar_2.setOrientation(SwingConstants.VERTICAL);
toolBar_2.setPreferredSize(new Dimension(29,80));
panel_2.add(toolBar_2);
JButton btnNewButton_1 = new JButton();
btnNewButton_1.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"nvail_1.png"));
toolBar_2.add(btnNewButton_1);
JButton btnNewButton_4 = new JButton();
btnNewButton_4.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"nvail_b.png"));
toolBar_2.add(btnNewButton_4);
panel_2.hide();
final JPanel panel_m_1 = new JPanel();
JPanel panel_mainPanel = new JPanel();
panel_m_1.setBackground(SystemColor.inactiveCaption);
panel_mainPanel.setBackground(SystemColor.inactiveCaption);
tabbedPane_m.add("总表",panel_m_1);
tabbedPane_m.add("主页",panel_mainPanel);
tabbedPane_m.setTabComponentAt(0,new TabPanel("总表",tabbedPane_m));
tabbedPane_m.setTabComponentAt(1,new TabPanel("主页",tabbedPane_m));
panel_m_1.setLayout(new BorderLayout(0, 0));
//tabbedPane_m.remove(0);
panel_3 = new JPanel();
panel_3.setBackground(new Color(100, 149, 237));
panel_3.setBorder(new TitledBorder(null, "", TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_m_1.add(panel_3, BorderLayout.SOUTH);
panel_3.setPreferredSize(new Dimension(0,120));
panel_3.setLayout(new BorderLayout(0, 0));
JPanel panel_title1 = new JPanel();
FlowLayout flowLayout = (FlowLayout) panel_title1.getLayout();
flowLayout.setAlignment(FlowLayout.LEADING);
panel_title1.setBackground(SystemColor.inactiveCaption);
panel_title1.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "\u6587\u4EF6\u64CD\u4F5C", TitledBorder.LEADING, TitledBorder.TOP, null, new Color(0, 0, 0)));
panel_3.add(panel_title1, BorderLayout.CENTER);
textField = new JTextField();
textField.setPreferredSize(new Dimension(0,24));
panel_title1.add(textField);
textField.setColumns(20);
JButton btnNewButton_2 = new JButton("文件选择");
btnNewButton_2.setForeground(Color.WHITE);
btnNewButton_2.setUI(new BEButtonUI(). setNormalColor(BEButtonUI.NormalColor.lightBlue));
btnNewButton_2.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"file.png"));
panel_title1.add(btnNewButton_2);
JButton btnNewButton_3 = new JButton("导入");
btnNewButton_3.setForeground(Color.WHITE);
btnNewButton_3.setUI(new BEButtonUI(). setNormalColor(BEButtonUI.NormalColor.lightBlue));
btnNewButton_3.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"filein.png"));
panel_title1.add(btnNewButton_3);
JPanel panel_title = new JPanel();
panel_title.setBackground(SystemColor.inactiveCaption);
panel_title.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "\u6570\u636E\u64CD\u4F5C", TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_title.setPreferredSize(new Dimension(0,60));
panel_3.add(panel_title, BorderLayout.SOUTH);
btnNewButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
tabbedPane_m.add("总表",panel_m_1);
tabbedPane_m.setTabComponentAt(0,new TabPanel("总表",tabbedPane_m));
}
});
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
panel_m.hide();
panel.show();
panel_2.hide();
panel_m.show();
}
});
btnNewButton_4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
panel_3.show();
}
});
}
public void setStatusBar(String SYSTEM_TITLE){
StatusBar statusBar = new StatusBar(SYSTEM_TITLE);
getContentPane().add(statusBar, BorderLayout.SOUTH);
}
}
主框架代码:
package org.zjy.view;
import java.awt.BorderLayout;
@SuppressWarnings("serial")
public class MainView extends JFrame {
private JPanel contentPane;
@SuppressWarnings("unused")
private JScrollPane scrollPane_main;
@SuppressWarnings("unused")
private JTabbedPane tabbedPane_main;
@SuppressWarnings("unused")
private JPanel panel_main;
private JTextField textField;
public static JPanel panel;
public static JPanel panel_2;
public static JPanel panel_3;
public static JPanel panel_1;
ReportContentPanel pane=new ReportContentPanel();
DataBaseContentPanel r_pane=new DataBaseContentPanel();
SystemSetContentPanel s_pane=new SystemSetContentPanel();
MangerSetContentPanel m_pane=new MangerSetContentPanel();
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
// 装载可选择的主题
try {
javax.swing.UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (InstantiationException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (UnsupportedLookAndFeelException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
MainView frame = new MainView();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
@SuppressWarnings("deprecation")
public MainView() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 1073, 643);
JMenuBar menuBar = new JMenuBar();
menuBar.setBackground(SystemColor.activeCaption);
setJMenuBar(menuBar);
JMenu mnf = new JMenu("文件(F)");
menuBar.add(mnf);
JMenuItem mntme = new JMenuItem("编辑(E)");
mnf.add(mntme);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(2, 2, 2, 2));
setContentPane(contentPane);
contentPane.setLayout(new BorderLayout(2, 2));
panel = new JPanel();
contentPane.add(panel, BorderLayout.WEST);
panel.setLayout(new BorderLayout(0, 0));
panel.setPreferredSize(new Dimension(200,150));
JScrollPane scrollPane = new JScrollPane();
panel.add(scrollPane, BorderLayout.CENTER);
JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
scrollPane.setViewportView(tabbedPane);
panel_1 = new JPanel();
panel_1.setBackground(SystemColor.activeCaption);
tabbedPane.addTab("sog管理", null, panel_1, null);
panel_1.setLayout(new BorderLayout(0, 0));
JPanel panel_action = new JPanel();
panel_action.setBackground(SystemColor.inactiveCaption);
panel_1.add(panel_action, BorderLayout.NORTH);
GridBagConstraints gbc = new GridBagConstraints();
panel_action.setLayout(new GridBagLayout());
JPanel panels = new JPanel(); //
JPanel panels_r = new JPanel();
JPanel panels_s = new JPanel();
JPanel panels_m = new JPanel();
gbc.insets = new Insets(1,3,0,3);
gbc.weightx = 1.0;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.gridwidth = GridBagConstraints.REMAINDER;
panels = new JExpandablePanel("业务报表",pane,"report_1.png");
panels_r = new JExpandablePanel("数据库管理",r_pane,"dataBase.png");
panels_s = new JExpandablePanel("系统设置",s_pane,"system_2.png");
panels_m = new JExpandablePanel("管理员设置",m_pane,"manger.png");
panel_action.add(panels, gbc);
panel_action.add(panels_r, gbc);
panel_action.add(panels_m, gbc);
panel_action.add(panels_s, gbc);
JPanel panel_toolbar = new JPanel();
panel_toolbar.setBackground(SystemColor.controlHighlight);
contentPane.add(panel_toolbar, BorderLayout.NORTH);
panel_toolbar.setPreferredSize(new Dimension(0,32));
FlowLayout fl_panel_toolbar = new FlowLayout(FlowLayout.LEFT, 0, 0);
panel_toolbar.setLayout(fl_panel_toolbar);
final JToolBar toolBar = new JToolBar();
toolBar.setRollover(true);
toolBar.setOpaque(false);
toolBar.setPreferredSize(new Dimension(200,32));
toolBar.setBackground(Color.DARK_GRAY);
panel_toolbar.add(toolBar);
JButton btnNewButton = new JButton();
btnNewButton.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"yc.png"));
btnNewButton.setBackground(Color.DARK_GRAY);
toolBar.add(btnNewButton);
setStatusBar("admin");
final JPanel panel_m = new JPanel();
contentPane.add(panel_m, BorderLayout.CENTER);
panel_m.setLayout(new BorderLayout(0, 0));
JScrollPane scrollPane_m = new JScrollPane();
panel_m.add(scrollPane_m, BorderLayout.CENTER);
final JTabbedPane tabbedPane_m = new JTabbedPane(JTabbedPane.TOP);
tabbedPane_m.setBackground(SystemColor.inactiveCaption);
9d18
tabbedPane_m.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
scrollPane_m.setViewportView(tabbedPane_m);
panel_2 = new JPanel();
panel_m.add(panel_2, BorderLayout.WEST);
panel_2.setPreferredSize(new Dimension(30,0));
JToolBar toolBar_2 = new JToolBar();
toolBar_2.setBackground(Color.DARK_GRAY);
toolBar_2.setOrientation(SwingConstants.VERTICAL);
toolBar_2.setPreferredSize(new Dimension(29,80));
panel_2.add(toolBar_2);
JButton btnNewButton_1 = new JButton();
btnNewButton_1.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"nvail_1.png"));
toolBar_2.add(btnNewButton_1);
JButton btnNewButton_4 = new JButton();
btnNewButton_4.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"nvail_b.png"));
toolBar_2.add(btnNewButton_4);
panel_2.hide();
final JPanel panel_m_1 = new JPanel();
JPanel panel_mainPanel = new JPanel();
panel_m_1.setBackground(SystemColor.inactiveCaption);
panel_mainPanel.setBackground(SystemColor.inactiveCaption);
tabbedPane_m.add("总表",panel_m_1);
tabbedPane_m.add("主页",panel_mainPanel);
tabbedPane_m.setTabComponentAt(0,new TabPanel("总表",tabbedPane_m));
tabbedPane_m.setTabComponentAt(1,new TabPanel("主页",tabbedPane_m));
panel_m_1.setLayout(new BorderLayout(0, 0));
//tabbedPane_m.remove(0);
panel_3 = new JPanel();
panel_3.setBackground(new Color(100, 149, 237));
panel_3.setBorder(new TitledBorder(null, "", TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_m_1.add(panel_3, BorderLayout.SOUTH);
panel_3.setPreferredSize(new Dimension(0,120));
panel_3.setLayout(new BorderLayout(0, 0));
JPanel panel_title1 = new JPanel();
FlowLayout flowLayout = (FlowLayout) panel_title1.getLayout();
flowLayout.setAlignment(FlowLayout.LEADING);
panel_title1.setBackground(SystemColor.inactiveCaption);
panel_title1.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "\u6587\u4EF6\u64CD\u4F5C", TitledBorder.LEADING, TitledBorder.TOP, null, new Color(0, 0, 0)));
panel_3.add(panel_title1, BorderLayout.CENTER);
textField = new JTextField();
textField.setPreferredSize(new Dimension(0,24));
panel_title1.add(textField);
textField.setColumns(20);
JButton btnNewButton_2 = new JButton("文件选择");
btnNewButton_2.setForeground(Color.WHITE);
btnNewButton_2.setUI(new BEButtonUI(). setNormalColor(BEButtonUI.NormalColor.lightBlue));
btnNewButton_2.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"file.png"));
panel_title1.add(btnNewButton_2);
JButton btnNewButton_3 = new JButton("导入");
btnNewButton_3.setForeground(Color.WHITE);
btnNewButton_3.setUI(new BEButtonUI(). setNormalColor(BEButtonUI.NormalColor.lightBlue));
btnNewButton_3.setIcon(new ImageIcon(MainUtil.getImgPath("file_img")+"filein.png"));
panel_title1.add(btnNewButton_3);
JPanel panel_title = new JPanel();
panel_title.setBackground(SystemColor.inactiveCaption);
panel_title.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "\u6570\u636E\u64CD\u4F5C", TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_title.setPreferredSize(new Dimension(0,60));
panel_3.add(panel_title, BorderLayout.SOUTH);
btnNewButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
tabbedPane_m.add("总表",panel_m_1);
tabbedPane_m.setTabComponentAt(0,new TabPanel("总表",tabbedPane_m));
}
});
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
panel_m.hide();
panel.show();
panel_2.hide();
panel_m.show();
}
});
btnNewButton_4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
panel_3.show();
}
});
}
public void setStatusBar(String SYSTEM_TITLE){
StatusBar statusBar = new StatusBar(SYSTEM_TITLE);
getContentPane().add(statusBar, BorderLayout.SOUTH);
}
}