仿照windows的记事本编写一个GUI窗口程序 java 的demo里有notePad这个源代码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 哈哈 jdk自带的demo下就有一个 编写窗口自己写就ok啦找本<jfc核心编程>看看就ok啦 搞个JFrame,里面添加个JTextArea,然后美观一下界面,就这么简单! import java.io.*;import javax.swing.*;public class SimpleSwingTextEditor { private JFrame frame = null; // @jve:decl-index=0:visual-constraint="19,7" private javax.swing.JPanel jContentPane = null; private javax.swing.JPanel jPanel = null; private javax.swing.JButton jButton = null; private javax.swing.JButton jButton1 = null; private javax.swing.JButton jButton2 = null; private javax.swing.JScrollPane jScrollPane = null; private javax.swing.JTextArea jTextArea = null; private javax.swing.JFileChooser jFileChooser = null; private boolean hasChanged = false; private static final String title = "Simple Swing Text Editor"; public static void main(String[] args) { SimpleSwingTextEditor thisClass = new SimpleSwingTextEditor(); thisClass.createFrame(); thisClass.frame.show(); } private void createFrame() { jButton = new javax.swing.JButton(); jButton.setText("Load File"); jButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { loadFile(); } }); jButton1 = new javax.swing.JButton(); jButton1.setText("Save File"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { saveFile(); } }); jButton2 = new javax.swing.JButton(); jButton2.setText("Exit"); jButton2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { doExit(); } }); jPanel = new javax.swing.JPanel(); jPanel.add(jButton, null); jPanel.add(jButton1, null); jPanel.add(jButton2, null); jTextArea = new javax.swing.JTextArea(); jTextArea.addKeyListener(new java.awt.event.KeyAdapter() { public void keyTyped(java.awt.event.KeyEvent e) { if (!hasChanged) { frame.setTitle(title + " *"); hasChanged = true; } } }); jScrollPane = new javax.swing.JScrollPane(); jScrollPane.setViewportView(jTextArea); jFileChooser = new javax.swing.JFileChooser(); jFileChooser.setMultiSelectionEnabled(false); frame = new JFrame(); frame.setSize(480, 284); frame.setTitle(title); frame.setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); frame.addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent e) { doExit(); } }); jContentPane=(JPanel)(frame.getContentPane()); jContentPane.setLayout(new java.awt.BorderLayout()); jContentPane.add(jPanel, java.awt.BorderLayout.SOUTH); jContentPane.add(jScrollPane, java.awt.BorderLayout.CENTER); jContentPane.setBorder(javax.swing.BorderFactory.createEmptyBorder( 5, 5, 5, 5)); } private void loadFile() { int state = jFileChooser.showOpenDialog(frame); if (state == JFileChooser.APPROVE_OPTION) { File f = jFileChooser.getSelectedFile(); try { BufferedReader br = new BufferedReader(new FileReader(f)); jTextArea.read(br, null); br.close(); frame.setTitle(title); hasChanged = false; } catch (FileNotFoundException e1) { e1.printStackTrace(); } catch (IOException e1) { e1.printStackTrace(); } } } private void saveFile() { int state = jFileChooser.showSaveDialog(frame); if (state == JFileChooser.APPROVE_OPTION) { File f = jFileChooser.getSelectedFile(); try { BufferedWriter bw = new BufferedWriter(new FileWriter(f)); jTextArea.write(bw); bw.close(); frame.setTitle(title); hasChanged = false; } catch (FileNotFoundException e1) { e1.printStackTrace(); } catch (IOException e1) { e1.printStackTrace(); } } } private void doExit() { if (hasChanged) { int state = JOptionPane.showConfirmDialog(frame, "File has been changed. Save before exit?","Save Changes?",JOptionPane.YES_NO_CANCEL_OPTION); if (state == JOptionPane.YES_OPTION) { saveFile(); } else if (state == JOptionPane.CANCEL_OPTION) { return; } } System.exit(0); }} java基础中的简单算法,在线等 关于按钮的问题 File的listFiles一问 组件不能立刻更新,大家帮我看看有什么办法. !!带有文件操作的JAR打包问题!!非常急!!! oracle 安装 关于计算一个月有多少天的问题?在线等!谢谢! 一个关于串口线程的问题。 FutureTask 不返回结果 大家一定要帮我,帮帮我,好急的!!!! 如何更改程序外观阿?分给的多 System.exit(1)中在JAVA中这个1是怎么传递的呀?
自己写就ok啦找本<jfc核心编程>
看看就ok啦
SimpleSwingTextEditor thisClass = new SimpleSwingTextEditor();
thisClass.createFrame();
thisClass.frame.show();
} private void createFrame() {
jButton = new javax.swing.JButton();
jButton.setText("Load File");
jButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
loadFile();
}
});
jButton1 = new javax.swing.JButton();
jButton1.setText("Save File");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
saveFile();
}
}); jButton2 = new javax.swing.JButton();
jButton2.setText("Exit");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
doExit();
}
}); jPanel = new javax.swing.JPanel();
jPanel.add(jButton, null);
jPanel.add(jButton1, null);
jPanel.add(jButton2, null); jTextArea = new javax.swing.JTextArea();
jTextArea.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyTyped(java.awt.event.KeyEvent e) {
if (!hasChanged) {
frame.setTitle(title + " *");
hasChanged = true;
}
}
}); jScrollPane = new javax.swing.JScrollPane();
jScrollPane.setViewportView(jTextArea); jFileChooser = new javax.swing.JFileChooser();
jFileChooser.setMultiSelectionEnabled(false); frame = new JFrame();
frame.setSize(480, 284);
frame.setTitle(title);
frame.setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
frame.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
doExit();
}
}); jContentPane=(JPanel)(frame.getContentPane());
jContentPane.setLayout(new java.awt.BorderLayout());
jContentPane.add(jPanel, java.awt.BorderLayout.SOUTH);
jContentPane.add(jScrollPane, java.awt.BorderLayout.CENTER);
jContentPane.setBorder(javax.swing.BorderFactory.createEmptyBorder(
5, 5, 5, 5));
} private void loadFile() {
int state = jFileChooser.showOpenDialog(frame);
if (state == JFileChooser.APPROVE_OPTION) {
File f = jFileChooser.getSelectedFile();
try {
BufferedReader br = new BufferedReader(new FileReader(f));
jTextArea.read(br, null);
br.close();
frame.setTitle(title);
hasChanged = false;
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
}
} private void saveFile() {
int state = jFileChooser.showSaveDialog(frame);
if (state == JFileChooser.APPROVE_OPTION) {
File f = jFileChooser.getSelectedFile();
try {
BufferedWriter bw = new BufferedWriter(new FileWriter(f));
jTextArea.write(bw);
bw.close();
frame.setTitle(title);
hasChanged = false;
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
}
} private void doExit() {
if (hasChanged) {
int state = JOptionPane.showConfirmDialog(frame,
"File has been changed. Save before exit?","Save Changes?",JOptionPane.YES_NO_CANCEL_OPTION);
if (state == JOptionPane.YES_OPTION) {
saveFile();
} else if (state == JOptionPane.CANCEL_OPTION) {
return;
}
}
System.exit(0);
}
}