⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 notebook.java

📁 用java写的记事本 基本功能与windows自带的相同
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
	        copymMenuItem.addActionListener(new ActionListener(){
				public void actionPerformed(ActionEvent e) {
					textArea.copy();
				}	        	
	        });
	        
	        pasteMenuItem = new JMenuItem("粘贴(P)");
	        pasteMenuItem.setMnemonic('P');
	        pasteMenuItem.setAccelerator(KeyStroke.getKeyStroke('V',java.awt.Event.CTRL_MASK,true));
	        pasteMenuItem.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e){
	        		textArea.paste();
	        	}
	        });
	        
	        
	        delMenuItem = new JMenuItem("删除(L)");
	        delMenuItem.setMnemonic('L');
	        delMenuItem.setAccelerator(KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_DELETE,0,false));
	        delMenuItem.addActionListener(new ActionListener(){
				public void actionPerformed(ActionEvent e) {
			        textArea.replaceRange("",textArea.getSelectionStart(),textArea.getSelectionEnd());
				}	       	
	        });
	        
	        
	        seachMenuItem = new JMenuItem("查找(F)");
	        seachMenuItem.setMnemonic('F');
	        seachMenuItem.setAccelerator(KeyStroke.getKeyStroke('F',java.awt.Event.CTRL_MASK,true));
	        seachMenuItem.addActionListener(new ActionListener(){
	             public void actionPerformed(ActionEvent e) {
					 findFile();
				}	
	        });
	        
	        
	        nextMenuItem = new JMenuItem("下一个(N)");
	        nextMenuItem.setMnemonic('N');
	        nextMenuItem.setAccelerator(KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F3,0,false));
	        nextMenuItem.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
				     findNextFile();
				}
	        });
	        
	        
	        replaceMenuItem = new JMenuItem("替换(R)");
	        replaceMenuItem.setMnemonic('R');
	        replaceMenuItem.setAccelerator(KeyStroke.getKeyStroke('H',java.awt.Event.CTRL_MASK,true));
	        replaceMenuItem.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					replaceString();
				}
	        });
	        
	        gotoMenuItem = new JMenuItem("转到(G)");
	        gotoMenuItem.setMnemonic('G');
	        gotoMenuItem.setAccelerator(KeyStroke.getKeyStroke('G',java.awt.Event.CTRL_MASK,true));
	        gotoMenuItem.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e	) {
				     	goToBox();
				}
	        });
	        
	        
	        allMenuItem = new JMenuItem("全选(A)");
	        allMenuItem.setMnemonic('A');
	        allMenuItem.setAccelerator(KeyStroke.getKeyStroke('A',java.awt.Event.CTRL_MASK,true));
	        allMenuItem.addActionListener(new ActionListener(){
	        	 public void actionPerformed(ActionEvent e) {
					textArea.selectAll();
				}
	        });
	        
	        dateMenuItem = new JMenuItem("日期(D)");
	        dateMenuItem.setMnemonic('G');
	        dateMenuItem.setAccelerator(KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F5,0,true));
	        dateMenuItem.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
	        		int pos = textArea.getCaretPosition();
	          		SimpleDateFormat  dateFormat=new SimpleDateFormat ("HH:mm yyyy-MM-dd");
	        		String datesString = dateFormat.format(new java.util.Date());
	                textArea.insert(datesString, pos);					
				}
	        });
	        
	        formatMenu = new JMenu("格式(O)");
	        newlineMenuItem = new JCheckBoxMenuItem("自动换行(W)");
	        newlineMenuItem.setMnemonic('W');
	        newlineMenuItem.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					if(newlineMenuItem.getState() == true){
						textArea.setLineWrap(true);
					}else{
						textArea.setLineWrap(false);
					}
				}
	        });
	        
	        
	        fontMenuItem = new JMenuItem("字体(F)...");
	        fontMenuItem.setMnemonic('F');
	        fontMenuItem.addActionListener(new ActionListener(){				
				public void actionPerformed(ActionEvent e) {
					    showFontSetBox();	
				}
	        	
	        });
	        
	        seeMenu = new JMenu("查看 (V)");
	        statusMenuItem = new JCheckBoxMenuItem("状态(S)");
	        statusMenuItem.setMnemonic('S');
	        statusMenuItem.addActionListener(new ActionListener(){
			
				public void actionPerformed(ActionEvent e) {
				    if(statusMenuItem.getState() == true){
				    	statusPanel.setVisible(true);
				    }else{
				    	statusPanel.setVisible(false);
				    }
				}	        
	        });
	        
	        
	        helpMenu = new JMenu("帮助(H)");
	        helpMenuItem = new JMenuItem("帮助");
	        helpMenuItem.setMnemonic('H');
	        helpMenuItem.addActionListener(new ActionListener(){
	        	  public void actionPerformed(ActionEvent e){
	        		  Runtime process = Runtime.getRuntime();
	        	        File f = new File(this.getClass().getResource("/").getPath());
	        	        String str = f.getPath() + "\\notepad.chm";
	        	        try {
	        	            process.exec("hh.exe " + str);
	        	        } catch (IOException ex) {
	        	        }
				}
	        });
	        aboutMenuItem = new JMenuItem("关于(A)");
	        aboutMenuItem.setMnemonic('A');
	        aboutMenuItem.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					JOptionPane.showMessageDialog(null, "作者:奚闻捷"+"\n"+"我的记事本","	关于", 2);
				}
	        });
	      
	    		
	    	
	    	fileMenu.setFont(font);
	    	menuBar.add(fileMenu);
	    	fileMenu.add(newMenuItem);
	    	fileMenu.add(openMenuItem);
	    	fileMenu.add(saveMenuItem);
	    	fileMenu.add(saveAsMenuItem);
	    	fileMenu.addSeparator();
	    	fileMenu.add(printMenuItem);
	    	fileMenu.addSeparator();
	    	fileMenu.add(exitMenuItem);
	    	
	    
	    	menuBar.add(editMenu);
	    	editMenu.add(undoMenuItem);
	    	editMenu.addSeparator();
	    	editMenu.add(cutMenuItem);
	      	editMenu.add(copymMenuItem);
	    	editMenu.add(pasteMenuItem);
	    	editMenu.add(delMenuItem);
	    	editMenu.addSeparator();
	    	editMenu.add(seachMenuItem);
	    	editMenu.add(nextMenuItem);
	    	editMenu.add(replaceMenuItem);
	    	editMenu.add(gotoMenuItem);
	    	editMenu.addSeparator();
	    	editMenu.add(allMenuItem);
	    	editMenu.add(dateMenuItem);
	    	
	    	menuBar.add(formatMenu);
	    	formatMenu.add(newlineMenuItem);
	    	formatMenu.add(fontMenuItem);
	    	
	    	menuBar.add(seeMenu);
	    	seeMenu.add(statusMenuItem);
	    	
	    	menuBar.add(helpMenu);
	    	helpMenu.add(helpMenuItem);
	    	helpMenu.addSeparator();
	    	helpMenu.add(aboutMenuItem);
	    	
	    	popMenuUndo.setText("撤销(U)");
	        popMenuUndo.setMnemonic('U');
	        popMenuCut.setText("剪贴(T)");
	        popMenuCut.setMnemonic('T');
	        popMenuCopy.setText("复制(C)");
	        popMenuCopy.setMnemonic('C');
	        popMenuPaste.setText("粘贴(P)");
	        popMenuPaste.setMnemonic('P');
	        popMenuDel.setText("删除(D)");
	        popMenuDel.setMnemonic('D');
	        popMenuSelectAll.setText("全选(A)");
	    	
	     
	        popupMenu.add(popMenuUndo);
	        popupMenu.addSeparator();
	        popupMenu.add(popMenuCut);
	        popupMenu.add(popMenuCopy);
	        popupMenu.add(popMenuPaste);
	        popupMenu.add(popMenuDel);
	        popupMenu.addSeparator();
	        popupMenu.add(popMenuSelectAll);
	        popupMenu.addSeparator();
	        
	        //右键菜单Event
	        popMenuUndo.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					undoDocument();
				}
	        }); 
	        popMenuCut.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					textArea.cut();
				}
	        });  
	        popMenuCopy.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					textArea.copy();
				}
	        }); 
	        popMenuPaste.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					textArea.paste();
				}
	        }); 
	        popMenuDel.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
	        		textArea.replaceRange("",textArea.getSelectionStart(),textArea.getSelectionEnd());
				}
	        }); 
	        popMenuSelectAll.addActionListener(new ActionListener(){
	        	public void actionPerformed(ActionEvent e) {
					textArea.selectAll();
				}
	        }); 
	        
	        //添加系统退出侦听
	        this.addWindowListener(new ExitSystem());	
	        
	         //初始化菜单字体	
	    	
	    	Component[] components =menuBar.getComponents();
	    	ChangeFont(font, components);
	    	Component[] components2 =fileMenu.getMenuComponents();
	    	ChangeFont(font, components2);
	    	Component[] components3 = editMenu.getMenuComponents();
	    	ChangeFont(font, components3);
	    	Component[] components4 = seeMenu.getMenuComponents();
	    	ChangeFont(font, components4);
	        Component[] components5 = formatMenu.getMenuComponents();
            ChangeFont(font, components5);
            Component[] components6 = helpMenu.getMenuComponents();
            ChangeFont(font, components6);
            Component[] components7 = popupMenu.getComponents();
            ChangeFont(font, components7);
            
                   

			popMenuUndo.setEnabled(false);
            undoMenuItem.setEnabled(false);
            
            
            //设置Windows风格界面
            try {
				UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel") ;
			} catch (ClassNotFoundException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			} catch (InstantiationException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			} catch (IllegalAccessException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			} catch (UnsupportedLookAndFeelException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
			
			UIManager.put("OptionPane.messageFont", font);
			UIManager.put("Label.font",   font);   
            UIManager.put("Button.font",   font);
            //打印
            job = PrinterJob.getPrinterJob();
            
			
	    	    	
	    	this.menuBar.setBackground(SystemColor.control);
	    	this.statusPanel.setBackground(SystemColor.control);
	    	this.statusPanel.setVisible(false);
	    	this.setJMenuBar(menuBar);
	       	this.getContentPane().add(panel);
	       	this.setSize(800,600);
	       	
	       	//程序主窗体居中
	       	/*Dimension   winSize   =   Toolkit.getDefaultToolkit().getScreenSize();   //屏幕分辨率  
	       	int i =( winSize.width - this.getWidth())/2;
	       	int j = (winSize.height-this.getHeight())/2;
	       	System.out.println(i);
	       	System.out.println(j);
	        this.setLocation( i ,  j) ; //窗口定位*/
	       	this.setLocationRelativeTo(null);   
	       	
	       	
	       	
	    	this.setTitle(filename+"-记事本");
	    	this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); //调用Windwos侦听方法处理退出	    	
	    	this.setVisible(true);
	    	
	    	
	    	//添加文本域Mouse侦听
	        textArea.addMouseListener(new MouseAdapter() {						
			     	public void mouseReleased(MouseEvent e) {					
					//System.out.println("df");
					 if (e.isPopupTrigger())
						popupMenu.show(e.getComponent(), e.getX(), e.getY());
					
			     	}
			 });
	    }
	        
	    
	    
	        //更换字体方法

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -