find.java

来自「This is the complete Editor Using java」· Java 代码 · 共 113 行

JAVA
113
字号
package com.jeditor;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Find extends JFrame implements ActionListener
{   
        
    JLabel label;
    JTextField t;
    JButton b1,b2;
    JPanel p1,p2;
    JTextArea findtext;
    int l;
    boolean flag;
    public Find(JTextArea jt)
    {
            
		
        super("Find");        
        setSize(300,150);       
        
        l=0;
        flag=false;
        
        findtext=jt;
        
        p1=new JPanel();
        p2=new JPanel();
        
        b1=new JButton("Find Next");
        b1.addActionListener(this);
        b2=new JButton("close");
        b2.addActionListener(this);
        
        label=new JLabel("Find What...?");
        
        t=new JTextField(20);
        
        p1.setLayout(new GridLayout(2,0));        
        p1.add(label);
        p1.add(t);
        
        p2.setLayout(new FlowLayout(FlowLayout.RIGHT,10,0));        
        p2.add(b1);
        p2.add(b2);
        
        getContentPane().setLayout(new GridLayout(2,0));
        getContentPane().add(p1);
        getContentPane().add(p2);
        
        setCursor(HAND_CURSOR);
        setResizable(false);
        setVisible(true);
        
	}
	public void actionPerformed(ActionEvent e)
	{
		if(e.getActionCommand().equals("Find Next"))
		{
			String sfind=t.getText();
			int length=sfind.length();
			int j=l+length;
			String mainstring=findtext.getText();
			if(!flag)
			{
				l=mainstring.indexOf(sfind);
				
				if(l<0)
				{
					t.setText("The Search String is not Found........");
					l=0;
					b1.setEnabled(false);
					
				}
				else
				{
					findtext.select(l,l+length);
					flag=true;
				}
			}
			else if(flag)
			{
				l=mainstring.indexOf(sfind,j);
				findtext.select(l,l+length);
			}
			
			int last=mainstring.lastIndexOf(sfind);
			if(l==last)
			{
				t.setText("Search is complete");
				b1.setEnabled(false);
			}
		}
		
		else
		dispose();
	}
}
class Find1
{				
    public static void main(String args[])
    {
    	JFrame f=new JFrame("Bunty");
    	f.setSize(400,400);
    	JTextArea j1=new JTextArea();
    	f.getContentPane().add(j1);
    	
    	f.setVisible(true);
    	Find ff=new Find(j1);
    	
    	
	}
}

⌨️ 快捷键说明

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