diff --git a/0307.1 b/0307.1 new file mode 100644 index 0000000000000000000000000000000000000000..465f90d147f454d9de3b09c72203c0ab9f9ba33a --- /dev/null +++ b/0307.1 @@ -0,0 +1,264 @@ +package java2020spring; + + + +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; + +import javax.swing.*; + +public class Test extends JFrame{ + + public Test() + { + super("文本编辑器"); + + + JMenuBar mBar = new JMenuBar(); + + this.setJMenuBar(mBar); + + + JMenu file = new JMenu("文件"); + JMenu edit = new JMenu("编辑"); + JMenu form = new JMenu("格式"); + JMenu help = new JMenu("帮助"); + JMenu look=new JMenu("查看"); + + + mBar.add(file); + mBar.add(edit); + mBar.add(form); + mBar.add(look); + mBar.add(help); + + + JTextArea workArea = new JTextArea(); + JScrollPane imgScrollPane = new JScrollPane(workArea); + + add(imgScrollPane,BorderLayout.CENTER); + + + FileDialog openDia; + FileDialog saveDia; + + openDia = new FileDialog(this,"打开(N)",FileDialog.LOAD); + saveDia = new FileDialog(this,"另存为(A)",FileDialog.SAVE); + + + JMenuItem item1_1 = new JMenuItem("新建(O)"); + item1_1.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + workArea.setText(""); + } + }); + JMenuItem item1_2 = new JMenuItem("打开(N)"); + item1_2.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + openDia.setVisible(true); + + String dirPath = openDia.getDirectory(); + String fileName = openDia.getFile(); + + + if(dirPath == null || fileName == null){ + return; + } + + workArea.setText(""); + + File fileO = new File(dirPath,fileName); + + try{ + BufferedReader bufr = new BufferedReader(new FileReader(fileO)); + + String line = null; + + while((line = bufr.readLine()) != null){ + workArea.append(line + "\r\n"); + } + + bufr.close(); + }catch(IOException er1){ + throw new RuntimeException("文件读取失败!"); + } + + } + }); + JMenuItem item1_3 = new JMenuItem("保存(S)"); + item1_3.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + File fileS = null; + if(fileS == null){ + saveDia.setVisible(true); + String dirPath = saveDia.getDirectory(); + String fileName = saveDia.getFile(); + + if(dirPath == null || fileName == null) + return; + + fileS = new File(dirPath,fileName); + } + + try{ + BufferedWriter bufw = new BufferedWriter(new FileWriter(fileS)); + String text = workArea.getText(); + bufw.write(text); + bufw.close(); + }catch(IOException er){ + throw new RuntimeException("文件保存失败!"); + } + } + }); + JMenuItem item1_4 = new JMenuItem("另存为(A)"); + item1_4.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + File fileS = null; + if(fileS == null){ + saveDia.setVisible(true); + String dirPath = saveDia.getDirectory(); + String fileName = saveDia.getFile(); + + if(dirPath == null || fileName == null) + return; + + fileS = new File(dirPath,fileName); + } + + try{ + BufferedWriter bufw = new BufferedWriter(new FileWriter(fileS)); + String text = workArea.getText(); + bufw.write(text); + bufw.close(); + }catch(IOException er){ + throw new RuntimeException("文件保存失败!"); + } + } + }); + JMenuItem item1_5 = new JMenuItem("退出(Q)"); + item1_5.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + System.exit(0); + } + }); + + JMenuItem item2_1 = new JMenuItem("剪切(X)"); + JMenuItem item2_2 = new JMenuItem("复制(C)"); + JMenuItem item2_3 = new JMenuItem("粘贴(V)"); + + JRadioButtonMenuItem item3_1 = new JRadioButtonMenuItem("自动换行(W)",false); + item3_1.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + Object source = e.getSource(); + + if(source == item3_1) + workArea.setLineWrap(true); + else if(source != item3_1) + workArea.setLineWrap(false); + } + }); + + JMenuItem item5_1 = new JMenuItem("状态栏(K)"); + + + + JMenuItem item4_1 = new JMenuItem("查看帮助(H)"); + item4_1.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent event){ + new LookHelp(); + } + }); + JMenuItem item4_2 = new JMenuItem("关于记事本(A)"); + item4_2.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent event){ + new AboutBook(); + } + }); + + + file.add(item1_1);file.add(item1_2);file.add(item1_3);file.add(item1_4);file.add(item1_5); + edit.add(item2_1);edit.add(item2_2);edit.add(item2_3); + form.add(item3_1); + help.add(item4_1);help.add(item4_2); + look.add(item5_1); + + + } + + public static void main(String args[]) + { + Test app = new Test(); + + app.setSize(600, 400); + app.setLocation(200,200); + app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + app.setVisible(true); + } + + +} + +package java2020spring; + + + import javax.swing.*; + + import java.awt.*; + + @SuppressWarnings("serial") + public class LookHelp extends JFrame{ + + public LookHelp(){ + super("查看帮助"); + this.setSize(500, 300); + this.setLocation(200,300); + this.setResizable(false); + this.setDefaultCloseOperation(DISPOSE_ON_CLOSE); + this.setVisible(true); + + Container c = this.getContentPane(); + c.setLayout(new GridLayout(5,0)); + + JLabel label1 = new JLabel("1、菜单栏的菜单项可点击来选择功能。"); + JLabel label2 = new JLabel("2、“编辑”里的剪切、复制、粘贴可用快捷键Ctrl + x、Ctrl + c、Ctrl + v实现。"); + JLabel label3 = new JLabel("3、“格式”里的“自动换行”需要点中才可进行自动换行。"); + + c.add(label1);c.add(label2);c.add(label3); + } + } + + + +package java2020spring; + + + + + import javax.swing.*; + + @SuppressWarnings("serial") + public class AboutBook extends JFrame{ + public AboutBook(){ + super("关于记事本"); + this.setSize(220, 100); + this.setLocation(200,300); + this.setResizable(false); + this.setDefaultCloseOperation(DISPOSE_ON_CLOSE); + this.setVisible(true); + + JPanel panel = new JPanel(); + JLabel label = new JLabel("版本2021H2"); + + panel.add(label); + this.add(panel); + } + } \ No newline at end of file diff --git a/0307/.keep b/0307/.keep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/gsj b/gsj new file mode 100644 index 0000000000000000000000000000000000000000..662abc9e12f101d49cbe7aff6f11ed39991906c8 --- /dev/null +++ b/gsj @@ -0,0 +1,209 @@ +package java2020spring; + + + +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; + +import javax.swing.*; + +public class Test extends JFrame{ + + public Test() + { + super("文本编辑器"); + + + JMenuBar mBar = new JMenuBar(); + + this.setJMenuBar(mBar); + + + JMenu file = new JMenu("文件"); + JMenu edit = new JMenu("编辑"); + JMenu form = new JMenu("格式"); + JMenu help = new JMenu("帮助"); + JMenu look=new JMenu("查看"); + + + mBar.add(file); + mBar.add(edit); + mBar.add(form); + mBar.add(look); + mBar.add(help); + + + JTextArea workArea = new JTextArea(); + JScrollPane imgScrollPane = new JScrollPane(workArea); + + add(imgScrollPane,BorderLayout.CENTER); + + + FileDialog openDia; + FileDialog saveDia; + + openDia = new FileDialog(this,"打开(N)",FileDialog.LOAD); + saveDia = new FileDialog(this,"另存为(A)",FileDialog.SAVE); + + + JMenuItem item1_1 = new JMenuItem("新建(O)"); + item1_1.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + workArea.setText(""); + } + }); + JMenuItem item1_2 = new JMenuItem("打开(N)"); + item1_2.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + openDia.setVisible(true); + + String dirPath = openDia.getDirectory(); + String fileName = openDia.getFile(); + + + if(dirPath == null || fileName == null){ + return; + } + + workArea.setText(""); + + File fileO = new File(dirPath,fileName); + + try{ + BufferedReader bufr = new BufferedReader(new FileReader(fileO)); + + String line = null; + + while((line = bufr.readLine()) != null){ + workArea.append(line + "\r\n"); + } + + bufr.close(); + }catch(IOException er1){ + throw new RuntimeException("文件读取失败!"); + } + + } + }); + JMenuItem item1_3 = new JMenuItem("保存(S)"); + item1_3.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + File fileS = null; + if(fileS == null){ + saveDia.setVisible(true); + String dirPath = saveDia.getDirectory(); + String fileName = saveDia.getFile(); + + if(dirPath == null || fileName == null) + return; + + fileS = new File(dirPath,fileName); + } + + try{ + BufferedWriter bufw = new BufferedWriter(new FileWriter(fileS)); + String text = workArea.getText(); + bufw.write(text); + bufw.close(); + }catch(IOException er){ + throw new RuntimeException("文件保存失败!"); + } + } + }); + JMenuItem item1_4 = new JMenuItem("另存为(A)"); + item1_4.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + File fileS = null; + if(fileS == null){ + saveDia.setVisible(true); + String dirPath = saveDia.getDirectory(); + String fileName = saveDia.getFile(); + + if(dirPath == null || fileName == null) + return; + + fileS = new File(dirPath,fileName); + } + + try{ + BufferedWriter bufw = new BufferedWriter(new FileWriter(fileS)); + String text = workArea.getText(); + bufw.write(text); + bufw.close(); + }catch(IOException er){ + throw new RuntimeException("文件保存失败!"); + } + } + }); + JMenuItem item1_5 = new JMenuItem("退出(Q)"); + item1_5.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + System.exit(0); + } + }); + + JMenuItem item2_1 = new JMenuItem("剪切(X)"); + JMenuItem item2_2 = new JMenuItem("复制(C)"); + JMenuItem item2_3 = new JMenuItem("粘贴(V)"); + + JRadioButtonMenuItem item3_1 = new JRadioButtonMenuItem("自动换行(W)",false); + item3_1.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent e){ + Object source = e.getSource(); + + if(source == item3_1) + workArea.setLineWrap(true); + else if(source != item3_1) + workArea.setLineWrap(false); + } + }); + + JMenuItem item5_1 = new JMenuItem("状态栏(K)"); + + + + JMenuItem item4_1 = new JMenuItem("查看帮助(H)"); + item4_1.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent event){ + new LookHelp(); + } + }); + JMenuItem item4_2 = new JMenuItem("关于记事本(A)"); + item4_2.addActionListener(new ActionListener(){ + public void actionPerformed(ActionEvent event){ + new AboutBook(); + } + }); + + + file.add(item1_1);file.add(item1_2);file.add(item1_3);file.add(item1_4);file.add(item1_5); + edit.add(item2_1);edit.add(item2_2);edit.add(item2_3); + form.add(item3_1); + help.add(item4_1);help.add(item4_2); + look.add(item5_1); + + + } + + public static void main(String args[]) + { + Test app = new Test(); + + app.setSize(600, 400); + app.setLocation(200,200); + app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + app.setVisible(true); + } + + +} + \ No newline at end of file