From ff4a371c08a5523a6d45119e875b88fe5ae616db Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:17:36 +0800 Subject: [PATCH 1/9] Notepad --- src/java2020spring/EditorFrame.java | 300 ++++++++++++++++++++++++++++ src/java2020spring/FontDialog.java | 102 ++++++++++ src/java2020spring/Fontfamily.java | 12 ++ src/java2020spring/Helper.java | 15 ++ src/java2020spring/ItemChoice.java | 103 ++++++++++ src/java2020spring/MainClass.java | 20 ++ src/java2020spring/OpenFile.java | 91 +++++++++ src/java2020spring/Save.java | 82 ++++++++ src/java2020spring/SaveAs.java | 100 ++++++++++ src/java2020spring/Search.java | 87 ++++++++ 10 files changed, 912 insertions(+) create mode 100644 src/java2020spring/EditorFrame.java create mode 100644 src/java2020spring/FontDialog.java create mode 100644 src/java2020spring/Fontfamily.java create mode 100644 src/java2020spring/Helper.java create mode 100644 src/java2020spring/ItemChoice.java create mode 100644 src/java2020spring/MainClass.java create mode 100644 src/java2020spring/OpenFile.java create mode 100644 src/java2020spring/Save.java create mode 100644 src/java2020spring/SaveAs.java create mode 100644 src/java2020spring/Search.java diff --git a/src/java2020spring/EditorFrame.java b/src/java2020spring/EditorFrame.java new file mode 100644 index 0000000..3d4d3de --- /dev/null +++ b/src/java2020spring/EditorFrame.java @@ -0,0 +1,300 @@ +package notepad; + +import javax.swing.undo.*; + +import java.awt.Color; +import java.awt.Dimension; +import java.awt.FlowLayout; +import java.awt.Toolkit; +import java.awt.datatransfer.Clipboard; +import java.awt.datatransfer.DataFlavor; +import java.awt.datatransfer.StringSelection; +import java.awt.datatransfer.Transferable; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.InputEvent; +import java.awt.event.KeyEvent; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; + +import javax.swing.*; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; +import javax.swing.event.UndoableEditEvent; +import javax.swing.event.UndoableEditListener; +import javax.swing.text.Document; +import javax.swing.undo.UndoManager; + +public class EditorFrame extends JFrame implements ActionListener, DocumentListener { + // JFrame wenBen_JfrFrame; + JMenu wenBen_JMenu[] = new JMenu[5];// 目录菜单 + JMenuBar wenben_Bar; + JPopupMenu jpopupMenu; + Toolkit toolkit = Toolkit.getDefaultToolkit(); + Clipboard clipBoard = toolkit.getSystemClipboard();// 系统剪切板 + UndoManager undo = new UndoManager(); + protected UndoableEditListener undoHandler = new UndoHandler(); + JTextArea textArea = new JTextArea(); + + JMenuItem jMenuItem[] = new JMenuItem[30]; + JLabel nowJlLabel = new JLabel();// 显示当前状态的一个标签 + JScrollPane JSP = new JScrollPane(textArea);// 设置为可滚动的文本框 + static int shurucishu = 0; + + EditorFrame() {//框架 + // new FileDialog(this); + // this.add(textArea); + int windowWidth = 500; // 获得窗口宽 + int windowHeight = 500; // 获得窗口高 + Toolkit kit = Toolkit.getDefaultToolkit(); // 定义工具包 + Dimension screenSize = kit.getScreenSize(); // 获取屏幕的尺寸 + int screenWidth = screenSize.width; // 获取屏幕的宽 + int screenHeight = screenSize.height; // 获取屏幕的高 + setBounds(screenWidth / 2 - windowWidth / 2, screenHeight / 2 - windowHeight / 2, 500, 500);//设置窗口居中显示 + setLayout(null); + jMenuItem[0] = new JMenuItem("保存(S)");//创建功能栏 + jMenuItem[0].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_MASK));//添加快捷键 + // jMenuItem[0].addActionListener(this); + jMenuItem[1] = new JMenuItem("打开(O)..."); + jMenuItem[1].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, InputEvent.CTRL_MASK)); + // jMenuItem[1].addActionListener(this); + jMenuItem[2] = new JMenuItem("字体颜色"); + jMenuItem[3] = new JMenuItem("查找"); + jMenuItem[4] = new JMenuItem("自动换行"); + jMenuItem[5] = new JMenuItem("字体"); + jMenuItem[6] = new JMenuItem("状态栏"); + jMenuItem[7] = new JMenuItem("当前时间"); + jMenuItem[8] = new JMenuItem("另存为(A)..."); + // jMenuItem[8].addActionListener(this); + jMenuItem[9] = new JMenuItem("查看帮助"); + jMenuItem[10] = new JMenuItem("退出(X)"); + jMenuItem[10].addActionListener(this); + jMenuItem[11] = new JMenuItem("撤销(U)"); + jMenuItem[11].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z, InputEvent.CTRL_MASK)); + jMenuItem[11].addActionListener(this); + jMenuItem[11].setEnabled(false); + jMenuItem[12] = new JMenuItem("剪切(T)"); + jMenuItem[12].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL_MASK)); + jMenuItem[12].addActionListener(this); + jMenuItem[13] = new JMenuItem("复制(C)"); + jMenuItem[13].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK)); + jMenuItem[13].addActionListener(this); + jMenuItem[14] = new JMenuItem("粘贴(P)"); + jMenuItem[14].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK)); + jMenuItem[14].addActionListener(this); + jMenuItem[15] = new JMenuItem("删除(D)"); + jMenuItem[15].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0)); + jMenuItem[15].addActionListener(this); + // 创建右键弹出菜单 + jpopupMenu = new JPopupMenu(); + jMenuItem[16] = new JMenuItem("撤销(U)"); + jMenuItem[17] = new JMenuItem("剪切(T)"); + jMenuItem[18] = new JMenuItem("复制(C)"); + jMenuItem[19] = new JMenuItem("粘帖(P)"); + jMenuItem[20] = new JMenuItem("删除(D)"); + jMenuItem[21] = new JMenuItem("全选(A)"); + + jMenuItem[16].setEnabled(false); + jMenuItem[22] = new JMenuItem("新建(N)"); + jMenuItem[22].setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, InputEvent.CTRL_MASK)); + jMenuItem[22].addActionListener(this); + jMenuItem[23] = new JMenuItem("更换背景"); + jMenuItem[23].addActionListener(this); + + // 向右键菜单添加菜单项和分隔符 + for (int i = 16; i <= 21; i++) { + jpopupMenu.add(jMenuItem[i]); + // 文本编辑区注册右键菜单事件 + jMenuItem[i].addActionListener(this); + } + textArea.addMouseListener(new MouseAdapter() { + public void mousePressed(MouseEvent e) { + if (e.isPopupTrigger())// 返回此鼠标事件是否为该平台的弹出菜单触发事件 + { + jpopupMenu.show(e.getComponent(), e.getX(), e.getY()); + } + checkMenuItemEnabled();// 设置剪切,复制,粘帖,删除等功能的可用性 + textArea.requestFocus();// 编辑区获取焦点 + } + + public void mouseReleased(MouseEvent e) { + if (e.isPopupTrigger())// 返回此鼠标事件是否为该平台的弹出菜单触发事件 + { + jpopupMenu.show(e.getComponent(), e.getX(), e.getY());// 在组件调用者的坐标空间中的位置 X、Y 显示弹出菜单 + } + checkMenuItemEnabled();// 设置剪切,复制,粘帖,删除等功能的可用性 + textArea.requestFocus();// 编辑区获取焦点 + } + }); + textArea.setForeground(Color.black); + for (int i = 0; i < 10; i++) { + jMenuItem[i].addActionListener(this); + } + wenBen_JMenu[0] = new JMenu("文件"); + wenBen_JMenu[1] = new JMenu("编辑"); + wenBen_JMenu[2] = new JMenu("格式"); + wenBen_JMenu[3] = new JMenu("查看"); + wenBen_JMenu[4] = new JMenu("帮助"); + wenBen_JMenu[0].add(jMenuItem[22]); + // wenBen_JMenu[1].add(jMenuItem[23]); + for (int i = 0; i < wenBen_JMenu.length; i++) { + wenBen_JMenu[i].setPreferredSize(new Dimension(95, 20)); + } + wenBen_JMenu[0].add(jMenuItem[0]); + wenBen_JMenu[0].add(jMenuItem[1]); + wenBen_JMenu[1].add(jMenuItem[3]); + wenBen_JMenu[2].add(jMenuItem[4]); + wenBen_JMenu[2].add(jMenuItem[5]); + wenBen_JMenu[3].add(jMenuItem[6]); + // wenBen_JMenu[3].add(jMenuItem[7]); + wenBen_JMenu[0].add(jMenuItem[8]); + wenBen_JMenu[0].add(jMenuItem[10]); + wenBen_JMenu[4].add(jMenuItem[9]); + for (int i = 11; i <= 15; i++) + wenBen_JMenu[1].add(jMenuItem[i]); + wenben_Bar = new JMenuBar(); + wenben_Bar.setLayout(new FlowLayout()); + for (int i = 0; i < 5; i++) { + wenben_Bar.add(wenBen_JMenu[i]); + } + // JPasswordField jPasswordField=new JPasswordField("123"); + // System.out.println(jPasswordField.getText()); + // System.out.println(jPasswordField.getText()); + // add(wenben_Bar); + JPanel jPanel = new JPanel(); + jPanel.setBounds(0, -10, 500, 35); + jPanel.add(wenben_Bar); + jPanel.setLayout(new FlowLayout()); + textArea.setLineWrap(false); + textArea.setTabSize(4);// 设置tab键长度 + Document document = textArea.getDocument(); + document.addDocumentListener(this); + JSP.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); // 自动滚动 + JSP.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);// 自动滚动 + JSP.setBounds(0, 30, 1920, 1080); + add(jPanel); + add(JSP); + setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + // validate(); + setVisible(true); + // nowJlLabel.setText("当前行数为:0 当前字体大小为: 12 当前字数为:0"); + nowJlLabel.setVisible(true); + nowJlLabel.setBounds(30, 440, 500, 20); + nowJlLabel.setVisible(false); + add(nowJlLabel); + textArea.getDocument().addUndoableEditListener(undoHandler); + textArea.getDocument().addDocumentListener(this); + // this.add(youjian1); + } + + public void actionPerformed(ActionEvent e) { + String buttonString = e.getActionCommand(); + ItemChoice aChoice = new ItemChoice(buttonString, this, textArea, nowJlLabel, JSP); + // aChoice.a(); + aChoice.SearchName(); + if (buttonString == "新建(N)") { + undo.discardAllEdits(); + jMenuItem[11].setEnabled(false); + jMenuItem[16].setEnabled(false); + } else if (buttonString == "撤销(U)") { + textArea.requestFocus(); + if (undo.canUndo()) { + undo.undo(); + } + if (!undo.canUndo()) { + jMenuItem[11].setEnabled(false); + jMenuItem[16].setEnabled(false); + } + } else if (buttonString == "剪切(T)") { + textArea.requestFocus(); + String text = textArea.getSelectedText(); + StringSelection selection = new StringSelection(text); + clipBoard.setContents(selection, null); + textArea.replaceRange("", textArea.getSelectionStart(), textArea.getSelectionEnd()); + checkMenuItemEnabled();// 设置剪切,复制,粘帖,删除功能的可用性 + } else if (buttonString == "复制(C)") { + textArea.requestFocus(); + String text = textArea.getSelectedText(); + StringSelection selection = new StringSelection(text); + clipBoard.setContents(selection, null); + checkMenuItemEnabled();// 设置剪切,复制,粘帖,删除功能的可用性 + } else if (buttonString == "粘帖(P)") { + textArea.requestFocus(); + Transferable contents = clipBoard.getContents(this); + if (contents == null) + return; + String text = ""; + try { + text = (String) contents.getTransferData(DataFlavor.stringFlavor); + } catch (Exception exception) { + } + textArea.replaceRange(text, textArea.getSelectionStart(), textArea.getSelectionEnd()); + checkMenuItemEnabled(); + } else if (buttonString == "删除(D)") { + textArea.requestFocus(); + textArea.replaceRange("", textArea.getSelectionStart(), textArea.getSelectionEnd()); + checkMenuItemEnabled(); + } else if (buttonString == "全选(A)") { + textArea.selectAll(); + } + } + + @Override + public void insertUpdate(DocumentEvent e) { + ItemChoice dongTaiChange = new ItemChoice("", this, textArea, nowJlLabel, JSP); + dongTaiChange.ChangeZhuangtai(); + jMenuItem[16].setEnabled(true); + jMenuItem[11].setEnabled(true); + } + + @Override + public void removeUpdate(DocumentEvent e) { + ItemChoice dongTaiChange = new ItemChoice("", this, textArea, nowJlLabel, JSP); + dongTaiChange.ChangeZhuangtai(); + jMenuItem[16].setEnabled(true); + jMenuItem[11].setEnabled(true); + } + + @Override + public void changedUpdate(DocumentEvent e) { + ItemChoice dongTaiChange = new ItemChoice("", this, textArea, nowJlLabel, JSP); + dongTaiChange.ChangeZhuangtai(); + jMenuItem[16].setEnabled(true); + jMenuItem[11].setEnabled(true); + } + + public void checkMenuItemEnabled() { + String selectText = textArea.getSelectedText(); + if (selectText == null) { + jMenuItem[17].setEnabled(false); + jMenuItem[12].setEnabled(false); + jMenuItem[18].setEnabled(false); + jMenuItem[14].setEnabled(false); + jMenuItem[20].setEnabled(false); + jMenuItem[15].setEnabled(false); + } else { + jMenuItem[17].setEnabled(true); + jMenuItem[12].setEnabled(true); + jMenuItem[18].setEnabled(true); + jMenuItem[14].setEnabled(true); + jMenuItem[20].setEnabled(true); + jMenuItem[15].setEnabled(true); + } + // 粘帖功能可用性判断 + Transferable contents = clipBoard.getContents(this); + if (contents == null) { + jMenuItem[19].setEnabled(false); + jMenuItem[14].setEnabled(false); + } else { + jMenuItem[19].setEnabled(true); + jMenuItem[14].setEnabled(true); + } + } + +//撤销操作 + class UndoHandler implements UndoableEditListener { + public void undoableEditHappened(UndoableEditEvent uee) { + undo.addEdit(uee.getEdit()); + } + } +} diff --git a/src/java2020spring/FontDialog.java b/src/java2020spring/FontDialog.java new file mode 100644 index 0000000..6c43276 --- /dev/null +++ b/src/java2020spring/FontDialog.java @@ -0,0 +1,102 @@ +package notepad; + +import java.awt.event.*; +import java.awt.*; +import javax.swing.*; + +@SuppressWarnings("serial") +public class FontDialog extends JDialog implements ItemListener, ActionListener { + Fontfamily fontFamilyNames; + static int fontsize = 12; // static存状态 + static String fontName = "宋体";// 字体名称 + JComboBox fontNameList, fontsizeList; + JLabel label; + Font font; + JButton yes, cancel; + int pointx, pointy; + static int YES = 1, NO = 0; // static存状态 + int state = -1; + + FontDialog(JFrame f, int pointx, int pointy) { + super(f); + setTitle("字体设置"); + font = new Font("宋体", Font.PLAIN, 12); + fontFamilyNames = new Fontfamily(); + setModal(true); + yes = new JButton("确认"); + cancel = new JButton("取消"); + yes.addActionListener(this); + cancel.addActionListener(this); + label = new JLabel("字体预览", JLabel.CENTER); + fontNameList = new JComboBox(); + fontsizeList = new JComboBox(); + String name[] = fontFamilyNames.getFontName(); + fontNameList.addItem("字体"); + // 枚举名字 + for (int k = 0; k < name.length; k++) + fontNameList.addItem(name[k]); + fontsizeList.addItem("大小"); + // 枚举大小 + for (int k = 8; k < 72; k = k + 2) + fontsizeList.addItem(new Integer(k)); + fontNameList.addItemListener(this); + fontsizeList.addItemListener(this); + JPanel pNorth = new JPanel(); + pNorth.setLayout(new GridLayout(1, 2)); + // fontNameList.setLocation(10, 10); + // fontsizeList.setLocation(30,0); + /* + * 设置位置 + */ + pNorth.add(fontNameList); + pNorth.add(fontsizeList); + add(pNorth, BorderLayout.NORTH); + add(label, BorderLayout.CENTER); + JPanel pSouth = new JPanel(); + pSouth.add(yes); + pSouth.add(cancel); + add(pSouth, BorderLayout.SOUTH); + setBounds(pointx + 100, pointy + 100, 280, 170); + setDefaultCloseOperation(DISPOSE_ON_CLOSE); + validate(); + } + + public void itemStateChanged(ItemEvent e) { + Integer m = null; + if (e.getSource() == fontNameList) { + fontName = (String) fontNameList.getSelectedItem(); + if (fontName != "字体") + font = new Font(fontName, Font.PLAIN, fontsize); + } else if (e.getSource() == fontsizeList) { + Object string = fontsizeList.getSelectedItem(); + m = (Integer) fontsizeList.getSelectedItem(); + if (string != "大小") { + fontsize = m.intValue(); + font = new Font(fontName, Font.PLAIN, fontsize); + } + } + new ItemChoice(fontName, fontsize); + // itemChoice changeZhuangtai=new itemChoice(fontName,fontsize); + label.setFont(font); + label.repaint(); + validate(); + } + + public void actionPerformed(ActionEvent e) { + if (e.getSource() == yes) { + state = YES; + setVisible(false); + } else if (e.getSource() == cancel) { + state = NO; + setVisible(false); + } + } + + public int getState() { + return state; + } + + public Font getFont() { + return font; + } +} diff --git a/src/java2020spring/Fontfamily.java b/src/java2020spring/Fontfamily.java new file mode 100644 index 0000000..91b8286 --- /dev/null +++ b/src/java2020spring/Fontfamily.java @@ -0,0 +1,12 @@ +package notepad; + +import java.awt.GraphicsEnvironment; + +public class Fontfamily { + String allFontName[]; + public String[] getFontName() { + GraphicsEnvironment ge=GraphicsEnvironment.getLocalGraphicsEnvironment(); + allFontName=ge.getAvailableFontFamilyNames(); + return allFontName; + } +} diff --git a/src/java2020spring/Helper.java b/src/java2020spring/Helper.java new file mode 100644 index 0000000..41c9b44 --- /dev/null +++ b/src/java2020spring/Helper.java @@ -0,0 +1,15 @@ +package notepad; + +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JTextArea; + + +public class Helper { + public Helper(JTextArea jTextArea,int pointx,int pointy) { + // TODO Auto-generated constructor stub + String string="1.状态栏可以显示当前字体大小和字数\n2.查找可以查询所要寻找的字符并且替换\n"; + JOptionPane.showMessageDialog(null, string); + } +} diff --git a/src/java2020spring/ItemChoice.java b/src/java2020spring/ItemChoice.java new file mode 100644 index 0000000..cc84886 --- /dev/null +++ b/src/java2020spring/ItemChoice.java @@ -0,0 +1,103 @@ +package notepad; + +import java.awt.Point; +import java.text.SimpleDateFormat; +import java.util.Date; + +import javax.swing.*; + +public class ItemChoice { + private EditorFrame frame; + private String itemstrString; + private JTextArea jTextArea; + private JLabel nowLabel; + private JScrollPane JSP;// 文本框的 + private ImageIcon imageIcon; + static String zitiName = "宋体";// 当前字体的类型 + static int zitiSize = 12;// 当前字体的大小 + static boolean huangHang = true, zhuangTai = false;// 是否换行和是否显示当前文字状态 + int pointx, pointy; + + ItemChoice() { + // TODO Auto-generated constructor stub + } + + ItemChoice(String itemString, EditorFrame frame, JTextArea textArea, JLabel nowLabel, JScrollPane JSP) { + this.frame = frame; + this.itemstrString = itemString; + this.jTextArea = textArea; + this.nowLabel = nowLabel; + this.JSP = JSP; + Point point = frame.getLocation(); + this.pointx = point.x; + this.pointy = point.y; + } + + ItemChoice(String zitString, int zitiSize) { + // TODO Auto-generated constructor stub + this.zitiName = zitString; + this.zitiSize = zitiSize; + } + + public void SearchName() { + // TODO Auto-generated method stub + if (itemstrString == "保存(S)") { + int n = JOptionPane.showConfirmDialog(null, "你确定要保存吗", "保存?", JOptionPane.YES_NO_OPTION); + if (n == 0) { + Save baoChun = new Save(jTextArea, pointx, pointy); + } + } else if (itemstrString == "自动换行") { + jTextArea.setLineWrap(huangHang); + huangHang = !huangHang; + ChangeZhuangtai(); + } else if (itemstrString == "字体") { + FontDialog dialog = new FontDialog(frame, pointx, pointy); + dialog.setVisible(true); + if (dialog.getState() == FontDialog.YES) { + jTextArea.setFont(dialog.getFont()); + jTextArea.repaint(); + } else { + jTextArea.repaint(); + } + ChangeZhuangtai(); + } else if (itemstrString == "状态栏") {// 改变状态栏 + zhuangTai = !zhuangTai; + if (zhuangTai) + JSP.setBounds(0, 30, 485, 410); + else { + JSP.setBounds(0, 30, 485, 432); + } + ChangeZhuangtai(); + // jlabelString.format(); + nowLabel.setVisible(zhuangTai); + } else if (itemstrString == "打开(O)...") { + OpenFile openFile = new OpenFile(jTextArea, pointx, pointy); + } else if (itemstrString == "查找") { + new Search(jTextArea, pointx, pointy); + } else if (itemstrString == "另存为(A)...") { + new SaveAs(jTextArea, pointx, pointy); + } else if (itemstrString == "查看帮助") { + new Helper(jTextArea, pointx, pointy); + } else if (itemstrString == "退出(X)") { + System.exit(0); + } else if (itemstrString == "新建(N)") { + int k = JOptionPane.showConfirmDialog(null, "你是否需要另存为", "保存?", JOptionPane.YES_NO_OPTION); + if (k == 0) { + // @SuppressWarnings("unused") + new SaveAs(jTextArea, pointx, pointy); + } + jTextArea.replaceRange("", 0, jTextArea.getText().length()); + } + + } + + // 改变状态栏的数据 + public void ChangeZhuangtai() { + String textnumberString = new String(jTextArea.getText());// 计算有多少个字数 + int ziNumber = textnumberString.length(); + String jlabelString = new String(); + jlabelString = "字体:" + zitiName + " 字体大小: " + zitiSize + " 字数:" + ziNumber + " 行数:" + + jTextArea.getLineCount() + " 是否自动换行: " + (!huangHang ? ("是") : "否"); + nowLabel.setText(jlabelString); + } +} diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java new file mode 100644 index 0000000..6463d0a --- /dev/null +++ b/src/java2020spring/MainClass.java @@ -0,0 +1,20 @@ +package notepad; + +import javax.swing.ImageIcon; +import javax.swing.UIManager; + +public class MainClass { + public static void main(String[] args) { + try { + javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");//设置外观 + } catch (Exception e) { + // TODO: handle exception + e.printStackTrace(); + } + EditorFrame kuangJia; + kuangJia = new EditorFrame(); + kuangJia.setTitle("Notepad");//设置标题 + ImageIcon imageIcon = new ImageIcon("img/1.jpg"); + kuangJia.setIconImage(imageIcon.getImage());//设置窗口图标 + } +} diff --git a/src/java2020spring/OpenFile.java b/src/java2020spring/OpenFile.java new file mode 100644 index 0000000..dc46473 --- /dev/null +++ b/src/java2020spring/OpenFile.java @@ -0,0 +1,91 @@ +package notepad; + +import javax.sound.sampled.AudioFormat.Encoding; + + +import javax.swing.*; +import javax.swing.filechooser.FileFilter; + +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileReader; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.Scanner; + +public class OpenFile { + String pathString, filenameString, houzhuiString, qianzhuiString; + StringBuilder changStringBuilder; + boolean flag = true; + + OpenFile(JTextArea jTextArea, int pointx, int pointy) { + JFrame daKaiWenJian = new JFrame("打开文件"); + daKaiWenJian.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); + daKaiWenJian.setLayout(new FlowLayout()); + JFileChooser jFileChooser = new JFileChooser(); + jFileChooser.setBounds(pointx + 100, pointy + 100, 500, 500); + JButton openButton = new JButton("打开文件"); + daKaiWenJian.add(openButton); + // daKaiWenJian.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + daKaiWenJian.setBounds(pointx + 100, pointy + 100, 250, 150); + daKaiWenJian.setVisible(true); + openButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + // TODO Auto-generated method stub + int returnVal = jFileChooser.showOpenDialog(daKaiWenJian); + try { + File file = jFileChooser.getSelectedFile(); + if (file != null) { + pathString = file.getAbsolutePath(); + filenameString = file.getName(); + // JOptionPane.showMessageDialog(daKaiWenJian, pathString); + houzhuiString = filenameString.substring(filenameString.lastIndexOf(".") + 1); + qianzhuiString = pathString.substring(0, pathString.lastIndexOf("\\"));// 获取当前选择文件路径 + // System.out.println(qianzhuiString); + // System.out.println(System.getProperty("user.dir")); + if (!houzhuiString.equals("txt")) { + JOptionPane.showMessageDialog(daKaiWenJian, "请选择txt文件"); + return; + } + String result = ""; + StringBuilder contentBuilder = new StringBuilder(); + try { + File file2 = new File(pathString); + // String fileEncodeString=Encoding.get + InputStream inputStream = new FileInputStream(file2); + InputStreamReader inputStreamReader = null; + if (qianzhuiString.equals(System.getProperty("user.dir"))) { + inputStreamReader = new InputStreamReader(inputStream);// 读取从该文本保存的 + } + BufferedReader bufferedReader = new BufferedReader(inputStreamReader); + while ((result = bufferedReader.readLine()) != null) { + contentBuilder.append(result + '\n'); + } + bufferedReader.close(); + } catch (Exception e2) { + // TODO: handle exception + e2.printStackTrace(); + } + String str1 = contentBuilder.toString(); + jTextArea.selectAll(); + jTextArea.replaceRange("", jTextArea.getSelectionStart(), jTextArea.getSelectionEnd()); + jTextArea.append(str1); + daKaiWenJian.setVisible(false); + + } + } catch (Exception e1) { + // TODO: handle exception + e1.printStackTrace(); + } + + } + }); + + } + +} diff --git a/src/java2020spring/Save.java b/src/java2020spring/Save.java new file mode 100644 index 0000000..95a18a6 --- /dev/null +++ b/src/java2020spring/Save.java @@ -0,0 +1,82 @@ +package notepad; + +import java.awt.BorderLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileWriter; + +import javax.swing.*; + +public class Save { + JFrame documentNameFrame = new JFrame("请输入文件名"); + File TextFile; + JTextField documentNameField = new JTextField(); + JButton sureChoice = new JButton("确认");// 选择是否创建 + JLabel shuruJLabel = new JLabel("输入文件名:"); + private JTextArea jTextArea; + + Save(JTextArea jTextArea, int pointx, int pointy) { + this.jTextArea = jTextArea; + documentNameFrame.setLayout(null); + documentNameFrame.setBounds(pointx + 100, pointy + 100, 300, 150); + shuruJLabel.setBounds(50, 10, 70, 20); + documentNameField.setBounds(130, 10, 100, 20); + sureChoice.setBounds(112, 50, 70, 20); + documentNameFrame.add(shuruJLabel); + documentNameFrame.add(documentNameField); + documentNameFrame.add(sureChoice); + documentNameFrame.setVisible(true); + documentNameFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + sureChoice.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + // TODO Auto-generated method stub + CreateFile(); + } + }); + } + + public void CreateFile() { + String filenameString = documentNameField.getText(); + TextFile = new File(filenameString); + String basePath = System.getProperty("user.dir");// 获取当前目录所有的文件名确定是否重复 + String[] list = new File(basePath).list(); + String filenameString2 = filenameString + ".txt"; + // for(int i=0;i Date: Fri, 11 Jun 2021 16:20:00 +0800 Subject: [PATCH 2/9] update src/java2020spring/MainClass.java. --- src/java2020spring/MainClass.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java index 6463d0a..011d77e 100644 --- a/src/java2020spring/MainClass.java +++ b/src/java2020spring/MainClass.java @@ -6,15 +6,15 @@ import javax.swing.UIManager; public class MainClass { public static void main(String[] args) { try { - javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");//设置外观 + javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");//璁剧疆澶栬 } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } EditorFrame kuangJia; kuangJia = new EditorFrame(); - kuangJia.setTitle("Notepad");//设置标题 + kuangJia.setTitle("Notepad");//璁剧疆鏍囬 ImageIcon imageIcon = new ImageIcon("img/1.jpg"); - kuangJia.setIconImage(imageIcon.getImage());//设置窗口图标 + kuangJia.setIconImage(imageIcon.getImage());//璁剧疆绐楀彛鍥炬爣 } } -- Gitee From 3997441a39aca62c419bee53fe3c4c068637feb0 Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:20:30 +0800 Subject: [PATCH 3/9] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20img?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/img/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/img/.keep diff --git a/src/img/.keep b/src/img/.keep new file mode 100644 index 0000000..e69de29 -- Gitee From e43e4aff9a37b98e375959430b284321c8beca74 Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:20:47 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20src/?= =?UTF-8?q?img/.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/img/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/img/.keep diff --git a/src/img/.keep b/src/img/.keep deleted file mode 100644 index e69de29..0000000 -- Gitee From 95dee1a09cd06a80b301ea41d344bbdc1c427d83 Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:21:21 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20img?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/img/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/img/.keep diff --git a/src/img/.keep b/src/img/.keep new file mode 100644 index 0000000..e69de29 -- Gitee From 27b961bf99633575b788943d1d7d8e3a92ec798e Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:22:31 +0800 Subject: [PATCH 6/9] =?UTF-8?q?=E7=AA=97=E5=8F=A3=E5=9B=BE=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/img/1.jpg | Bin 0 -> 7079 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/img/1.jpg diff --git a/src/img/1.jpg b/src/img/1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a96bbc23fb04e3e6419f49f02bde8a2120b189cc GIT binary patch literal 7079 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 LWI)vj?-u?CUbjc# literal 0 HcmV?d00001 -- Gitee From d8874a5b93dce558f21e7221858c863e5c31bbba Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:22:38 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20src/?= =?UTF-8?q?img/.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/img/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/img/.keep diff --git a/src/img/.keep b/src/img/.keep deleted file mode 100644 index e69de29..0000000 -- Gitee From 359e19d9500a3cd23973eb62316aaf7684626b5b Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:26:03 +0800 Subject: [PATCH 8/9] update README.md. --- README.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 40fc824..d19b1e7 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,17 @@ -# 绉戝璁$畻鍣 +# 鏂囨湰缂栬緫鍣 #### 绯荤粺鐩爣 -绠瑕佷粙缁嶇郴缁熺殑鐢ㄩ +瀹炵幇璁颁簨鏈殑閮ㄥ垎鍔熻兘 #### 鍩烘湰鍔熻兘 璇︾粏浠嬬粛绯荤粺鍚勪釜妯″潡鐨勫姛鑳姐 -1. xxxx -2. xxxx -3. xxxx +1.鏂板缓鏂囦欢锛 淇濆瓨鏂囦欢锛 鎵撳紑鏂囦欢锛 鍙﹀瓨涓恒 +2.鏌ユ壘鏂囨湰鍐呭锛 骞朵笖鍙互鏇挎崲鍐呭銆 +3.鍓垏锛 澶嶅埗锛 绮樿创锛 鍒犻櫎锛 鍏ㄩ夈 +4.鑷姩鎹㈣锛 鏇存敼瀛椾綋 +5.鎵撳紑鍏抽棴鐘舵佹爮锛堝彲浠ユ樉绀哄綋鍓嶅瓧浣擄紝 瀛楁暟绛夛級 +6.甯姪 + #### 鐮佷簯鐗规妧 -- Gitee From 3e9a747b09344272f9c9467005bf2a0425df9050 Mon Sep 17 00:00:00 2001 From: shirley <1150858718@qq.com> Date: Fri, 11 Jun 2021 16:38:07 +0800 Subject: [PATCH 9/9] update src/java2020spring/MainClass.java. --- src/java2020spring/MainClass.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java index 011d77e..8de6344 100644 --- a/src/java2020spring/MainClass.java +++ b/src/java2020spring/MainClass.java @@ -14,7 +14,7 @@ public class MainClass { EditorFrame kuangJia; kuangJia = new EditorFrame(); kuangJia.setTitle("Notepad");//璁剧疆鏍囬 - ImageIcon imageIcon = new ImageIcon("img/1.jpg"); + ImageIcon imageIcon = new ImageIcon("src/img/1.jpg"); kuangJia.setIconImage(imageIcon.getImage());//璁剧疆绐楀彛鍥炬爣 } } -- Gitee