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

📄 texteditor.java

📁 Java写的记事本程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	  
	  mDel.addActionListener(new ActionListener() { 
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.cut(); }//////该用什么方法?????????
      });//删除       
      
      mSelect.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.select(0,1000000); }//这个参数如何设才合理?????
      }); //全选
	
	  //弹出式菜单中全部清除菜单项监听器
	  jMenuFileClear1.addActionListener(new ActionListener(){
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.setText(""); }
	  });
	  //弹出式菜单中的剪切菜单项监听器
	  jMenuFileCut1.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.cut(); }
	  });
	  //弹出式菜单中的复制菜单项监听器
	  jMenuFileCopy1.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.copy(); }
	  });
	  //弹出式菜单中的粘贴菜单项监听器
	  jMenuFilePaste1.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.paste(); }
	  });
	  //弹出式菜单中的删除菜单项监听器 
      jMenuFileDel1.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.cut(); }
	  });
	  //弹出式菜单中的粘贴菜单项监听器  
	  jMenuFileSelect1.addActionListener(new ActionListener(){
	    public void actionPerformed(ActionEvent e)
	     {  jTextArea.select(0, buffer.length-1); }
	  });		
	  //实现弹出式菜单的弹出
	  jTextArea.addMouseListener(new MouseAdapter(){
		 public void mouseReleased(MouseEvent event){          
			 if (event.isPopupTrigger())//少了可不行啊
				 pm.show(jTextArea,event.getX(), event.getY());
		}		
	  });		
	
    ///////////格式菜单事件监听器
     //字体菜单项
	 mFont.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e) { 
	      FontFrame F=new FontFrame();
          F.show();
          //F.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);删去!!!!!!!
	    }
	 }); 
	 //字体颜色菜单项
   	 jColor.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e){ 
	       Color color = JColorChooser.showDialog(MyGui.this, "选择字体颜色", null);
           jTextArea.setForeground(color) ;
	    }
	 } ); 
	 
	 jMenuHuanHang.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e){      
	        jTextArea.setLineWrap(true);    
	    }
	 }); 
	 /////帮助菜单项,点击弹出对话框(原为弹出JFrame)
     jMenuHelpAbout.addActionListener(new ActionListener(){ 
	    public void actionPerformed(ActionEvent e){
	      // HelpFrame H=new HelpFrame();   H.show();
	      //H.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);删去!!!!!
	      JOptionPane.showMessageDialog(MyGui.this,
	                                    "  此记事本程序为:\n  05-06学年JAVA技术课程设计作业"+
	                                    "\n  电子商务03-2班  20035136  王中兴\n     ++++ All Rights Reserved ++++ ",
	                                    " 重要提示",JOptionPane.INFORMATION_MESSAGE);
	      //父组件,消息,标题,图标
	   }
	 }); 
	       
   }//method MyGui
   
 // class SaveListener  内部类____事件处理
 class  SaveListener implements ActionListener{
   	 public void actionPerformed(ActionEvent e){
	     filechooser.setSelectedFile(new File("*.txt"));//设置默认的保存文件名*.txt
         int returnVal=filechooser.showSaveDialog(MyGui.this);	
         if(returnVal==JFileChooser.APPROVE_OPTION){
               file=filechooser.getSelectedFile();
                //保存文件
               try{FileWriter fw=new FileWriter(file);
                   fw.write(jTextArea.getText());
                   fw.close();
                  }catch(IOException ep){ep.getMessage();}
          }//if
        }    
  } //class SaveListener  内部类____事件处理
  
  
  class FontFrame extends JFrame{
	 JList fontList,stylesList,sizesList;
	 JTextField tf1;
     JTextField tf2;
     JTextField tf3;
	 JLabel fontName,styleName,sizeName;
	 String Names ,Styles, Sizes;
	 
	
	public FontFrame(){
	 	setSize(460,300);
		setTitle("选择字体");
	    Container cp1 = getContentPane();
	    cp1.setLayout(new BorderLayout());

	    fontName=new JLabel("字体"); tf1=new JTextField("宋体",7); 
	    styleName=new JLabel("风格");tf2=new JTextField("常规",4);
	    sizeName=new JLabel("大小"); tf3=new JTextField("11",3); 
	    JPanel namePanel=new JPanel();
	    namePanel.add(fontName);   namePanel.add(tf1);
	    namePanel.add(styleName);  namePanel.add(tf2);
	    namePanel.add(sizeName);   namePanel.add(tf3);

		///字体标签 和字体列表添加到面板
		JPanel fontListPanel=new JPanel();
		//用以下方法当前系统平台字体
		String names[] = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
        fontList= new JList(names);
        JScrollPane listScrollPane11 = new JScrollPane(fontList);//字体列表  
        fontListPanel.add(new JLabel("字体"));
        fontListPanel.add(listScrollPane11);
       
        //把风格标签和风格列表加到字体面板
        JPanel styleListPanel=new JPanel();
		String[] styles={"常规","斜体","粗体","斜粗体"}; 
		stylesList = new JList(styles);
      	JScrollPane listScrollPane2 = new JScrollPane(stylesList);
		styleListPanel.add(new JLabel("风格"));
		styleListPanel.add(listScrollPane2);
        
        ///大小标签和大小列表添加到面板
        JPanel sizeListPanel=new JPanel();
		String[] sizes={"11","12","13","14","15","16","17","18","19","20","25","30","35","40","45"} ;
		//int sizes[]={7,8,9,10,11,12,13,14,15,17,19,21,31,41,51};
		sizesList = new JList(sizes);//参数不可以是整型!!!!!
        JScrollPane listScrollPane3 = new JScrollPane(sizesList);
		sizeListPanel.add(new JLabel("大小"));
		sizeListPanel.add(listScrollPane3);
        
        //把按钮添加到面板
        JPanel buttonPanel=new JPanel();
        JButton button1=new JButton("确定");
		JButton button2=new JButton("取消");
		buttonPanel.add(button1);  
		buttonPanel.add(button2);
       	
       	JPanel bodyPanel=new JPanel(); 
       	bodyPanel.add(fontListPanel); 
       	bodyPanel.add(styleListPanel); 
       	bodyPanel.add(sizeListPanel);
		 
		 cp1.add(namePanel,"North");
		 cp1.add(bodyPanel,"Center");
		 cp1.add(buttonPanel,"South");
        
        //点击字体列表项的事件
		fontList.addListSelectionListener( new ListSelectionListener(){//要引入新的包
			public void valueChanged(ListSelectionEvent event){
    			//获取字体列表
    			Object[] selectedNames = fontList.getSelectedValues();//Returns an array of the values for the selected cells.
                                                                      // The returned values are sorted in increasing index order.
               for (int i = 0; i < selectedNames.length; i++)
                { //System.out.println(selectedNames[i]);
			    	Names=(String)selectedNames[0];
				}
			    tf1.setText(Names);
		    }	
		});
	    
	    stylesList.addListSelectionListener( new ListSelectionListener(){
			public void valueChanged(ListSelectionEvent event){
    		    //获取字形列表
				Object[] selectedStyles = stylesList.getSelectedValues();
			    
			    for (int i = 0; i < selectedStyles.length; i++){
			        Styles=(String)selectedStyles[0];
				}
			    tf2.setText(Styles);
		    }	
		});
		
		sizesList.addListSelectionListener( new ListSelectionListener(){
			public void valueChanged(ListSelectionEvent event){
    		    //获取字体大小列表
				Object[] selectedSizes = sizesList.getSelectedValues();
			   for (int i = 0; i < selectedSizes.length; i++){
			       Sizes=(String)selectedSizes[0];
				}
				tf3.setText(Sizes);
		    }	
		});
	   
	   button1.addActionListener(new ActionListener(){ 
	      public void actionPerformed(ActionEvent e){ 
                    int fontInt=0;
	            Styles=tf2.getText();
                       if(Styles=="常规"){
    			  fontInt=Font.PLAIN;
    			 } 
	               else if(Styles=="斜体"){     //问题!!!
    			  fontInt=Font.ITALIC;
    			 }  
    			else if(Styles=="粗体"){
    			  fontInt=Font.BOLD;
    			 } 
    			else if(Styles=="斜粗体"){
    			  fontInt=Font.ITALIC+Font.BOLD;
    			   }  
    			
    			int sizesInt=Integer.parseInt(tf3.getText());//这个方法 The characters in the string must all be decimal digits   
	            
	            Font f=new Font(tf1.getText(),fontInt,sizesInt);
    			jTextArea.setFont(f);  
    			setVisible(false); 
    		}            
	    } );
	    
		button2.addActionListener(new ActionListener(){ 
	      public void actionPerformed(ActionEvent e)
	           { setVisible(false);}                 
	    } );
  		
     }   
  }// class FontFrame 
  
   
}//class MyGui

⌨️ 快捷键说明

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