📄 mainframe.java
字号:
package printtable;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.awt.print.*;import com.borland.jbcl.layout.*;import javax.swing.border.*;import javax.swing.event.*;import javax.swing.table.*;public class MainFrame extends JFrame { //declear mainPanel PrintTable pt; JPanel mainPanel; BorderLayout mainPanelLayout = new BorderLayout(); //declear bottomPanel JPanel bottomPanel = new JPanel(); //declear tablePanel PageFormat pageFormat = new PageFormat(); JPanel tablePanel = new JPanel(); BorderLayout tablePanelLayout = new BorderLayout(); JScrollPane tableScroll = new JScrollPane(); JTable mainTable = new JTable(); //declear statePanel JPanel statePanel = new JPanel(); //declear tableInfoPanel JPanel tableInfoPanel = new JPanel(); JLabel lColumnNum = new JLabel(); JTextField col = new JTextField(5); JLabel lRowNum = new JLabel(); JTextField row = new JTextField(5); JButton okSetRCNum = new JButton(); //declear cellInfoPanel //declear menu JMenuBar mainMenu = new JMenuBar(); JMenu mFile = new JMenu(); JMenuItem mPageSetting = new JMenuItem(); JMenuItem mExit = new JMenuItem(); JMenuItem mPrintPreview = new JMenuItem(); JMenuItem mPrint = new JMenuItem(); JMenu mHelp = new JMenu(); JMenuItem mHelpTopics = new JMenuItem(); JMenuItem mAbout = new JMenuItem(); BorderLayout borderLayout1 = new BorderLayout(); FlowLayout flowLayout2 = new FlowLayout(); BorderLayout borderLayout2 = new BorderLayout(); /**Main method*/ public static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch(Exception e) { e.printStackTrace(); } MainFrame frame = new MainFrame(); frame.setVisible(true); } /**Construct the frame*/ public MainFrame() { enableEvents(AWTEvent.WINDOW_EVENT_MASK); try { ((DefaultTableModel)mainTable.getModel()).setColumnCount(3); ((DefaultTableModel)mainTable.getModel()).setRowCount(3); for(int i = 0;i < 3;i++) for(int j = 0;j < 3;j++) mainTable.setValueAt(""+i+"/"+j,i,j); pt = new PrintTable(mainTable); jbInit(); } catch(Exception e) { e.printStackTrace(); } } /**Component initialization*/ private void jbInit() throws Exception { //setIconImage(Toolkit.getDefaultToolkit().createImage(MainFrame.class.getResource("[Your Icon]"))); //Layout mainPanel mainPanel = (JPanel) this.getContentPane(); mainPanel.setLayout(mainPanelLayout); this.setJMenuBar(mainMenu); this.setSize(new Dimension(450, 550)); this.setTitle("Print Table Alpha 1.0"); okSetRCNum.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { okSetRCNum_actionPerformed(e); } }); mainPanel.add(bottomPanel, BorderLayout.CENTER); //mainPanel.add(pt,BorderLayout.NORTH); //Layout bottomPanel bottomPanel.setLayout(borderLayout1); bottomPanel.add(tablePanel, BorderLayout.CENTER); bottomPanel.add(statePanel, BorderLayout.SOUTH); //Layout tablePanel tablePanel.setLayout(tablePanelLayout); mainTable.getTableHeader().setBorder(BorderFactory.createLineBorder(Color.gray)); mainTable.setAutoResizeMode(0); mainTable.setSelectionMode(0); tablePanel.add(tableScroll, null); tableScroll.getViewport().add(mainTable, null); //Layout statePanel statePanel.setLayout(borderLayout2); statePanel.add(tableInfoPanel, BorderLayout.CENTER); //LayoutTableInfoPanel tableInfoPanel.setLayout(flowLayout2); tableInfoPanel.setBorder(BorderFactory.createEtchedBorder()); lRowNum.setText("Rows:"); tableInfoPanel.add(lRowNum, null); tableInfoPanel.add(row, null); row.setText("3"); lColumnNum.setText("Columns:"); tableInfoPanel.add(lColumnNum, null); tableInfoPanel.add(col, null); col.setText("3"); okSetRCNum.setText("OK"); tableInfoPanel.add(okSetRCNum, null); //Layout Menu //File mainMenu.add(mFile); mFile.setText("File"); mFile.add(mPrint); mPrint.setText("Print ..."); mPrint.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent event) { doPrint(); } }); mFile.add(mPrintPreview); mPrintPreview.setText("Print With Preview"); mPrintPreview.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent event) { doPrintPreview(); } }); mFile.add(mPageSetting); mPageSetting.setText("Page Setting ..."); mPageSetting.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent event) { doPageSetting(); } }); mFile.addSeparator(); mExit.setText("Exit"); mFile.add(mExit); //Help mainMenu.add(mHelp); mHelp.setText("Help"); mHelp.add(mHelpTopics); mHelpTopics.setText("Help Topics"); mHelp.add(mAbout); mAbout.setText("About ..."); } /**Overridden so we can exit when window is closed*/ protected void processWindowEvent(WindowEvent e) { super.processWindowEvent(e); if (e.getID() == WindowEvent.WINDOW_CLOSING) { System.exit(0); } } void doPrint() { pt.doPrintWithDialog(); } void doPrintPreview() { pt.printPreview(); } void doPageSetting() { pt.paperSetPage(); } void okSetRCNum_actionPerformed(ActionEvent e) { try { ((DefaultTableModel)mainTable.getModel()).setColumnCount(Integer.parseInt(col.getText())); ((DefaultTableModel)mainTable.getModel()).setRowCount(Integer.parseInt(row.getText())); for(int i = 0;i < Integer.parseInt(row.getText());i++) for(int j = 0;j < Integer.parseInt(col.getText());j++) mainTable.setValueAt(""+i+"/"+j,i,j); } catch(NumberFormatException nfe) { JOptionPane.showMessageDialog(this,"Error Input","Caution!",JOptionPane.ERROR_MESSAGE); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -