📄 loggingpanel.java
字号:
/* * LogginPanel.java * * Created on 2007年9月5日, 下午4:01 */package dyno.swing.designer.main;import java.io.Writer;/** * * @author William Chen */public class LoggingPanel extends javax.swing.JPanel { /** Creates new form LogginPanel */ public LoggingPanel() { initComponents(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); txtLogging = new javax.swing.JTextArea(); jPanel1 = new javax.swing.JPanel(); btnClear = new javax.swing.JButton(); btnCopy = new javax.swing.JButton(); setLayout(new java.awt.BorderLayout()); jScrollPane1.setBorder(null); txtLogging.setColumns(20); txtLogging.setFont(new java.awt.Font("Monospaced", 0, 12)); txtLogging.setRows(5); txtLogging.setBorder(null); jScrollPane1.setViewportView(txtLogging); add(jScrollPane1, java.awt.BorderLayout.CENTER); jPanel1.setBackground(java.awt.Color.white); jPanel1.setPreferredSize(new java.awt.Dimension(209, 23)); btnClear.setFont(new java.awt.Font("Arial", 0, 12)); btnClear.setText("Clear"); btnClear.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnClearActionPerformed(evt); } }); btnCopy.setFont(new java.awt.Font("Arial", 0, 12)); btnCopy.setText("Copy to Clipboard"); btnCopy.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnCopyActionPerformed(evt); } }); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() .addContainerGap(200, Short.MAX_VALUE) .addComponent(btnCopy) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(btnClear)) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(btnCopy) .addComponent(btnClear)) ); add(jPanel1, java.awt.BorderLayout.PAGE_END); }// </editor-fold>//GEN-END:initComponents private void btnClearActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnClearActionPerformed txtLogging.setText(""); }//GEN-LAST:event_btnClearActionPerformed private void btnCopyActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCopyActionPerformed txtLogging.selectAll(); txtLogging.copy(); txtLogging.requestFocus(); }//GEN-LAST:event_btnCopyActionPerformed public void logging(String message) { if (message != null) { txtLogging.append(message+"\n"); int length = txtLogging.getDocument().getLength(); txtLogging.setCaretPosition(length); } } public void logging(char[] cbuf, int off, int len){ if(cbuf!=null){ logging(new String(cbuf, off, len)); } } public Writer getWriter(){ return new LoggingWriter(txtLogging); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton btnClear; private javax.swing.JButton btnCopy; private javax.swing.JPanel jPanel1; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTextArea txtLogging; // End of variables declaration//GEN-END:variables}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -