⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 staflogviewer.java

📁 Software Testing Automation Framework (STAF)的开发代码
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
                    if (obj != null)                    {                        cellText = table.getValueAt(j,i).toString();                    }                    BufferedReader reader =                        new BufferedReader(new StringReader(cellText));                    String line;                    try                    {                        while ((line = reader.readLine()) != null)                        {                            data.addElement(line);                        }                    }                    catch(IOException ex)                    {                        ex.printStackTrace();                    }                    finally                    {                        try                        {                            reader.close();                        }                        catch (IOException ex)                        {                            ex.printStackTrace();                        }                    }                }                catch(Exception ex)                {                    ex.printStackTrace();                }            }            Enumeration e = data.elements();            while (e.hasMoreElements())            {                width = metrics.stringWidth((String)e.nextElement());                if (width > maxWidth)                {                    maxWidth = width;                }            }            Insets insets =                ((JComponent)table.getCellRenderer(0,i)).getInsets();                // need to pad a little extra for everything to look right            maxWidth += insets.left + insets.right + (maxWidth*.15);            table.getColumnModel().getColumn(i).setPreferredWidth(maxWidth);            tableWidth += maxWidth;        }        Dimension d = table.getSize();        d.width = tableWidth;        table.setSize(d);    }    public class STAFLogFrame extends JFrame implements ActionListener    {        public STAFLogFrame(String title)        {            super(title);            JMenuBar mainMenuBar = new JMenuBar();            setJMenuBar(mainMenuBar);            fFileMenu = new JMenu("File");            mainMenuBar.add(fFileMenu);            fViewMenu = new JMenu("View");            mainMenuBar.add(fViewMenu);            fFileExit = new JMenuItem("Exit");            fFileExit.addActionListener(this);            fFileMenu.add(fFileExit);            fViewRefresh = new JMenuItem("Refresh");            fViewRefresh.addActionListener(this);            fViewMenu.add(fViewRefresh);            fViewChangeFont = new JMenuItem("Change Font...");            fViewChangeFont.addActionListener(this);            fViewMenu.add(fViewChangeFont);            fChangeFontDialog = new JDialog(this, "Change Font", true);            fChangeFontDialog.setSize(220, 120);            JPanel changeFontPanel = new JPanel();            changeFontPanel.setLayout(new BorderLayout());            changeFontPanel.setBorder(new TitledBorder("Select Font"));            fChangeFontDialog.getContentPane().add(changeFontPanel);            fFontMenuItems = new Vector();            GraphicsEnvironment env = GraphicsEnvironment.                getLocalGraphicsEnvironment();            String[] fontNames = env.getAvailableFontFamilyNames();            fAvailableFonts = new JComboBox(fontNames);            fAvailableFonts.setBackground(Color.white);                        changeFontPanel.add(BorderLayout.NORTH, fAvailableFonts);            JPanel changeFontButtonPanel = new JPanel();            changeFontButtonPanel.setLayout(new                FlowLayout(FlowLayout.CENTER, 0, 0));            fChangeFontOkButton = new JButton("OK");            fChangeFontOkButton.addActionListener(this);            fChangeFontCancelButton = new JButton("Cancel");            fChangeFontCancelButton.addActionListener(this);            changeFontButtonPanel.add(fChangeFontOkButton);            changeFontButtonPanel.add(Box.createHorizontalStrut(20));            changeFontButtonPanel.add(fChangeFontCancelButton);            changeFontPanel.add(BorderLayout.SOUTH, changeFontButtonPanel);            fLevels = new JMenu("Levels");            mainMenuBar.add(fLevels);            fLevelAll = new JCheckBoxMenuItem("All", true);            fLevelAll.addActionListener(this);            fLevels.add(fLevelAll);            fLevels.addSeparator();            fLevelFatal = new JCheckBoxMenuItem("Fatal", true);            fLevelFatal.addActionListener(this);            fLevels.add(fLevelFatal);            fLevelError = new JCheckBoxMenuItem("Error", true);            fLevelError.addActionListener(this);            fLevels.add(fLevelError);            fLevelWarning = new JCheckBoxMenuItem("Warning", true);            fLevelWarning.addActionListener(this);            fLevels.add(fLevelWarning);            fLevelInfo = new JCheckBoxMenuItem("Info", true);            fLevelInfo.addActionListener(this);            fLevels.add(fLevelInfo);            fLevelTrace = new JCheckBoxMenuItem("Trace", true);            fLevelTrace.addActionListener(this);            fLevels.add(fLevelTrace);            fLevelTrace2 = new JCheckBoxMenuItem("Trace2", true);            fLevelTrace2.addActionListener(this);            fLevels.add(fLevelTrace2);            fLevelTrace3 = new JCheckBoxMenuItem("Trace3", true);            fLevelTrace3.addActionListener(this);            fLevels.add(fLevelTrace3);            fLevelDebug = new JCheckBoxMenuItem("Debug", true);            fLevelDebug.addActionListener(this);            fLevels.add(fLevelDebug);            fLevelDebug2 = new JCheckBoxMenuItem("Debug2", true);            fLevelDebug2.addActionListener(this);            fLevels.add(fLevelDebug2);            fLevelDebug3 = new JCheckBoxMenuItem("Debug3", true);            fLevelDebug3.addActionListener(this);            fLevels.add(fLevelDebug3);            fLevelStart = new JCheckBoxMenuItem("Start", true);            fLevelStart.addActionListener(this);            fLevels.add(fLevelStart);            fLevelStop = new JCheckBoxMenuItem("Stop", true);            fLevelStop.addActionListener(this);            fLevels.add(fLevelStop);            fLevelPass = new JCheckBoxMenuItem("Pass", true);            fLevelPass.addActionListener(this);            fLevels.add(fLevelPass);            fLevelFail = new JCheckBoxMenuItem("Fail", true);            fLevelFail.addActionListener(this);            fLevels.add(fLevelFail);            fLevelStatus = new JCheckBoxMenuItem("Status", true);            fLevelStatus.addActionListener(this);            fLevels.add(fLevelStatus);            fLevelUser1 = new JCheckBoxMenuItem("User1", true);            fLevelUser1.addActionListener(this);            fLevels.add(fLevelUser1);            fLevelUser2 = new JCheckBoxMenuItem("User2", true);            fLevelUser2.addActionListener(this);            fLevels.add(fLevelUser2);            fLevelUser3 = new JCheckBoxMenuItem("User3", true);            fLevelUser3.addActionListener(this);            fLevels.add(fLevelUser3);            fLevelUser4 = new JCheckBoxMenuItem("User4", true);            fLevelUser4.addActionListener(this);            fLevels.add(fLevelUser4);            fLevelUser5 = new JCheckBoxMenuItem("User5", true);            fLevelUser5.addActionListener(this);            fLevels.add(fLevelUser5);            fLevelUser6 = new JCheckBoxMenuItem("User6", true);            fLevelUser6.addActionListener(this);            fLevels.add(fLevelUser6);            fLevelUser7 = new JCheckBoxMenuItem("User7", true);            fLevelUser7.addActionListener(this);            fLevels.add(fLevelUser7);            fLevelUser8 = new JCheckBoxMenuItem("User8", true);            fLevelUser8.addActionListener(this);            fLevels.add(fLevelUser8);            columnNames = new Vector();            columnNames.add(new String("Timestamp"));            columnNames.add(new String("Level"));            columnNames.add(new String("Message"));            fLogTable = new JTable();            fLogTable.setFont(new Font(fFontName, Font.PLAIN, 12));            fAvailableFonts.setSelectedItem(fFontName);            fLogTable.setRowSelectionAllowed(true);            fLogTable.setColumnSelectionAllowed(false);            fLogTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);            updateRowHeights(fLogTable, 2, fFontName);            sizeColumnsToFitText(fLogTable);            JScrollPane logScroll = new JScrollPane(fLogTable);            getContentPane().add(logScroll);            addWindowListener(new WindowAdapter()            {                public void windowClosing(WindowEvent event)            {                    if (! fSystemExit)                        dispose();                    else                    {                        System.exit(0);                    }            }        });        }        public void actionPerformed(ActionEvent e)        {            if (e.getSource() == fFileExit)            {                if (! fSystemExit)                    dispose();                else                {                    System.exit(0);                }            }            else if (e.getSource() == fViewRefresh)            {                refreshTable(true);            }            else if (e.getSource() == fViewChangeFont)            {                fChangeFontDialog.setLocationRelativeTo(fLogFrame);                fChangeFontDialog.show();            }            else if (e.getSource() == fChangeFontOkButton)            {                fFontName = (String)fAvailableFonts.getSelectedItem();                fLogTable.setFont(new Font(fFontName, Font.PLAIN, 12));                updateLogTableRenderers();                updateRowHeights(fLogTable, 2, fFontName);                sizeColumnsToFitText(fLogTable);                fChangeFontDialog.hide();            }            else if (e.getSource() == fChangeFontCancelButton)            {                fChangeFontDialog.hide();            }            else if ((e.getSource() == fLevelAll) &&                fLevelAll.isSelected())            {                fLevelFatal.setSelected(true);                fLevelError.setSelected(true);                fLevelWarning.setSelected(true);                fLevelInfo.setSelected(true);                fLevelTrace.setSelected(true);                fLevelTrace2.setSelected(true);                fLevelTrace3.setSelected(true);                fLevelDebug.setSelected(true);                fLevelDebug2.setSelected(true);                fLevelDebug3.setSelected(true);                fLevelStart.setSelected(true);                fLevelStop.setSelected(true);                fLevelPass.setSelected(true);                fLevelFail.setSelected(true);                fLevelStatus.setSelected(true);                fLevelUser1.setSelected(true);                fLevelUser2.setSelected(true);                fLevelUser3.setSelected(true);                fLevelUser4.setSelected(true);                fLevelUser5.setSelected(true);                fLevelUser6.setSelected(true);                fLevelUser7.setSelected(true);                fLevelUser8.setSelected(true);                refreshTable(true);            }            else if ((e.getSource() == fLevelAll) &&                !(fLevelAll.isSelected()))            {                fLevelFatal.setSelected(false);                fLevelError.setSelected(false);                fLevelWarning.setSelected(false);                fLevelInfo.setSelected(false);                fLevelTrace.setSelected(false);                fLevelTrace2.setSelected(false);                fLevelTrace3.setSelected(false);                fLevelDebug.setSelected(false);                fLevelDebug2.setSelected(false);                fLevelDebug3.setSelected(false);                fLevelStart.setSelected(false);                fLevelStop.setSelected(false);                fLevelPass.setSelected(false);                fLevelFail.setSelected(false);                fLevelStatus.setSelected(false);                fLevelUser1.setSelected(false);                fLevelUser2.setSelected(false);                fLevelUser3.setSelected(false);                fLevelUser4.setSelected(false);                fLevelUser5.setSelected(false);                fLevelUser6.setSelected(false);                fLevelUser7.setSelected(false);                fLevelUser8.setSelected(false);                refreshTable(true);            }            else if ((e.getSource() == fLevelFatal))            {                refreshTable(true);                if (!(fLevelFatal.isSelected()))                {                    fLevelAll.setSelected(false);                }                else if (allLevelsSelected())                {                    fLevelAll.setSelected(true);                }            }            else if ((e.getSource() == fLevelError))            {                refreshTable(true);                if (!(fLevelError.isSelected()))                {                    fLevelAll.setSelected(false);                }                else if (allLevelsSelected())                {                    fLevelAll.setSelected(true);                }            }            else if ((e.getSource() == fLevelWarning))            {                refreshTable(true);                if (!(fLevelWarning.isSelected()))                {                    fLevelAll.setSelected(false);                }                else if (allLevelsSelected())                {                    fLevelAll.setSelected(true);                }            }            else if ((e.getSource() == fLevelInfo))            {                refreshTable(true);                if (!(fLevelInfo.isSelected()))                {                    fLevelAll.setSelected(false);                }                else if (allLevelsSelected())                {                    fLevelAll.setSelected(true);                }            }            else if ((e.getSource() == fLevelTrace))            {                refreshTable(true);                if (!(fLevelTrace.isSelected()))                {                    fLevelAll.setSelected(false);                }                else if (allLevelsSelected())                {                    fLevelAll.setSelected(true);                }            }            else if ((e.getSource() == fLevelTrace2))            {                refreshTable(true);                if (!(fLevelTrace2.isSelected()))                {                    fLevelAll.setSelected(false);                }                else if (allLevelsSelected())                {                    fLevelAll.setSelected(true);                }            }            else if ((e.getSource() == fLevelTrace3))            {                refreshTable(true);                if (!(fLevelTrace3.isSelected()))                {                    fLevelAll.setSelected(false);                }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -