📄 notepad.java
字号:
package notepad;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.util.Calendar;
import javax.swing.DefaultListModel;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JToolBar;
import javax.swing.ListSelectionModel;
;
public class Notepad extends JFrame {
JPanel pnlMain;
Calendar c = Calendar.getInstance();
DefaultListModel dlmName;
JList lstName;
JMenuBar mbMain;
JMenu mnuSystem, mnuEdit, mnuHelp;
JMenuItem mnuiCls, mnuiSave, mnuiClock, mnuiExit, mnuiContent, mnuiIndex,
mnuiAbout, mnuiSelectAll, mnuiClear;
JToolBar tb = new JToolBar();
JButton btnNew = null;
JButton btnOpen = null;
JButton btnSave = null;
JButton btnExit = null;
JTextArea ta;
public Notepad() {
super("记事本");
setDefaultCloseOperation(EXIT_ON_CLOSE);
Font font = new Font("宋体", Font.PLAIN, 12);
// 列表框初始化
ta = new JTextArea("这是一个文本域组件");
ta.setLineWrap(true);
dlmName = new DefaultListModel();
dlmName.addElement("刘志成");
dlmName.addElement("刘德华");
dlmName.addElement("张学友");
dlmName.addElement("李四");
dlmName.addElement("王咏梅");
lstName = new JList(dlmName);
lstName.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
lstName.setSelectedIndex(0);
System.out.println(Calendar.DATE);
// 菜单初始化
mbMain = new JMenuBar();
mnuSystem = new JMenu("系统(S)");
// mnuSystem.setDelay(2);
mnuEdit = new JMenu("编辑(E)");
// mnuEdit.setDelay(3);
mnuHelp = new JMenu("帮助(H)");
mnuSystem.setMnemonic('S');
mnuEdit.setMnemonic('E');
mnuHelp.setMnemonic(KeyEvent.VK_H);
mbMain.add(mnuSystem);
mbMain.add(mnuEdit);
mbMain.add(mnuHelp);
// 初始化系统菜单项
mnuiCls = new JMenuItem("清除屏幕显示");
mnuiSave = new JMenuItem("保存聊天记录");
mnuiClock = new JMenuItem("显示系统时间");
mnuiExit = new JMenuItem("退出系统");
mnuiExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
JOptionPane.showMessageDialog(null, "谢谢使用");
System.exit(0);
}
});
mnuSystem.add(mnuiCls);
mnuSystem.add(mnuiSave);
mnuSystem.addSeparator();
mnuSystem.add(mnuiExit);
// 初始化编辑菜单
mnuiSelectAll = new JMenuItem("全选");
mnuiClear = new JMenuItem("删除");
mnuEdit.add(mnuiSelectAll);
mnuEdit.add(mnuiClear);
// 初始化帮助菜单
Icon icnContent = new ImageIcon("E:/java/images/22.gif");
mnuiContent = new JMenuItem("目录", icnContent);
mnuiIndex = new JMenuItem("索引");
mnuiAbout = new JMenuItem("关于[HappChat]聊天系统");
mnuHelp.add(mnuiContent);
mnuHelp.add(mnuiIndex);
mnuHelp.add(mnuiAbout);
// 初始化工具栏
btnNew = makeButton("E:/java/images/new", "新建一个文件", "新建");
btnOpen = makeButton("E:/java/images/open", "打开一个文件", "打开");
btnSave = makeButton("E:/java/images/save", "保存一个文件", "保存");
btnExit = makeButton("E:/java/images/exit", "退出系统", "退出");
// Insets ist=new Insets(0,0,0,0);//设置工具栏与它的按钮之间的距离
tb.add(btnNew);
tb.add(btnOpen);
tb.add(btnSave);
tb.add(btnExit);
// 设置工具栏位置
pnlMain = new JPanel(null);
setContentPane(pnlMain);
tb.setBounds(0, 0, 400, 40);
lstName.setBounds(10, 40, 200, 300);
ta.setBounds(220, 40, 200, 300);
pnlMain.add(ta);
pnlMain.add(tb);
pnlMain.add(lstName);
// 设置组件字体
mnuSystem.setFont(font);
mnuEdit.setFont(font);
mnuHelp.setFont(font);
mnuiCls.setFont(font);
mnuiSave.setFont(font);
mnuiClock.setFont(font);
mnuiExit.setFont(font);
mnuiSelectAll.setFont(font);
mnuiClear.setFont(font);
mnuiContent.setFont(font);
mnuiIndex.setFont(font);
mnuiAbout.setFont(font);
setSize(500, 400);
Toolkit tk = Toolkit.getDefaultToolkit();
Dimension scrnSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = this.getSize();
if (frameSize.height > scrnSize.height) {
frameSize.height = scrnSize.height;
}
if (frameSize.width > scrnSize.width) {
frameSize.width = scrnSize.width;
}
// 使窗口居中对齐
setLocation((scrnSize.width - frameSize.width) / 2,
(scrnSize.height - frameSize.height) / 2);
setJMenuBar(mbMain);
setVisible(true);
}
// 创建工具栏按钮方法
JButton makeButton(String strImage, String txtToopTip, String strAlter) {
String imgLocation = strImage + ".gif";
// 引入java.net.URL包可以保证makeButton方法中的URL类正常使用
// URL urlImage=Notepad.class.getResource(imgLocation);
JButton btnTemp = new JButton(new ImageIcon(imgLocation));
btnTemp.setActionCommand(strAlter);
btnTemp.setToolTipText(txtToopTip);
btnTemp.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
JOptionPane.showMessageDialog(null, "您选择了:"
+ ae.getActionCommand());
if (ae.getSource() == btnExit)
System.exit(0);
}
});
/*
* if(urlImage!=null) btnTemp.setIcon(new ImageIcon(urlImage)); else
* btnTemp.setText(strAlter);
*/
return btnTemp;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new Notepad();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -