java swing 日志_Swing应用开发实战系列之五:后台日志信息前台监控器

本文介绍如何使用Java Swing创建一个后台日志信息的前台监控器。通过模拟生成窗口展示日志信息,并提供了输入框和按钮,允许用户触发日志更新并清空当前显示。
摘要由CSDN通过智能技术生成

importjavax.swing.JDialog;importjavax.swing.UIManager;importjavax.swing.GroupLayout;importjavax.swing.GroupLayout.Alignment;importjavax.swing.JScrollPane;importjavax.swing.JTextArea;importjavax.swing.JLabel;importjavax.swing.LayoutStyle.ComponentPlacement;importjavax.swing.JButton;importjava.awt.event.ActionListener;importjava.awt.event.ActionEvent;/*** Description:后台日志信息模拟生成窗口

* Copyright: Copyright (c) 2015

* Company: 河南电力科学研究院智能电网所

*@authorshangbingbing 2015-01-01编写

*@version1.0*/

public class DialogLogGenerator extendsJDialog {private static final long serialVersionUID = 1L;privateJTextArea txtLogInfo;public static voidmain(String[] args) {try{//设置系统观感器

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

DialogLogGenerator dialog= newDialogLogGenerator();

dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);

dialog.setVisible(true);

DialogLogMonitor dialogLogMonitor= newDialogLogMonitor();

dialogLogMonitor.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);

dialogLogMonitor.setVisible(true);

}catch(Exception e) {

e.printStackTrace();

}

}private voidgeneratorLog() {

LogMonitor.addLog(this.txtLogInfo.getText());this.txtLogInfo.setText("");

}publicDialogLogGenerator() {

setResizable(false);

setTitle("\u540E\u53F0\u65E5\u5FD7\u6A21\u62DF\u751F\u6210\u6D4B\u8BD5\u7A97\u53E3");

setBounds(100, 100, 439, 278);

JLabel lblNewLabel= new JLabel("\u8BF7\u8F93\u5165\u6A21\u62DF\u65E5\u5FD7\u4FE1\u606F\uFF1A");

JScrollPane scrollPane= newJScrollPane();

JButton btnCreateLog= new JButton("\u4F20\u9012\u6A21\u62DF\u65E5\u5FD7");

btnCreateLog.addActionListener(newActionListener() {public voidactionPerformed(ActionEvent e) {

generatorLog();

}

});

GroupLayout groupLayout= newGroupLayout(getContentPane());

groupLayout.setHorizontalGroup(

groupLayout.createParallelGroup(Alignment.LEADING)

.addGroup(groupLayout.createSequentialGroup()

.addContainerGap()

.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)

.addGroup(groupLayout.createSequentialGroup()

.addComponent(scrollPane, GroupLayout.DEFAULT_SIZE,413, Short.MAX_VALUE)

.addContainerGap())

.addGroup(groupLayout.createSequentialGroup()

.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)

.addComponent(btnCreateLog, GroupLayout.PREFERRED_SIZE,131, GroupLayout.PREFERRED_SIZE)

.addComponent(lblNewLabel, GroupLayout.PREFERRED_SIZE,170, GroupLayout.PREFERRED_SIZE))

.addGap(253))))

);

groupLayout.setVerticalGroup(

groupLayout.createParallelGroup(Alignment.LEADING)

.addGroup(groupLayout.createSequentialGroup()

.addGap(18)

.addComponent(lblNewLabel)

.addPreferredGap(ComponentPlacement.UNRELATED)

.addComponent(scrollPane, GroupLayout.PREFERRED_SIZE,131, GroupLayout.PREFERRED_SIZE)

.addGap(18)

.addComponent(btnCreateLog, GroupLayout.PREFERRED_SIZE,41, GroupLayout.PREFERRED_SIZE)

.addContainerGap(17, Short.MAX_VALUE))

);

txtLogInfo= newJTextArea();

scrollPane.setViewportView(txtLogInfo);

getContentPane().setLayout(groupLayout);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值