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

📄 myfinddialogtest.java

📁 《Java编程基础、应用与实例》 源文件下载
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;

class MyFindDialog extends Dialog implements ActionListener{
  private Label lFind=new Label("茫阑 巩磊凯:");
  private Label lReplace=new Label("官曹 巩磊凯:");
  private TextField tFind=new TextField(10);
  private TextField tReplace=new TextField(10);
  private Button bFind=new Button("茫扁");
  private Button bReplace=new Button("官操扁");
  private TextArea ta;
  public MyFindDialog(Frame owner, TextArea ta){
    super(owner,"茫扁",false);
    this.ta=ta;
    setLayout(null);
    lFind.setBounds(10,30,80,20);
    lReplace.setBounds(10,70,80,20);
    tFind.setBounds(90,30,90,20);
    tReplace.setBounds(90,70,90,20);
    bFind.setBounds(190,30,80,20);
    bReplace.setBounds(190,70,80,20);
    add(lFind); add(tFind); add(bFind); add(lReplace);
    add(tReplace); add(bReplace);
    setResizable(false);
    bFind.addActionListener(this);
    bReplace.addActionListener(this);
    addWindowListener( new WindowAdapter(){
         public void windowClosing(WindowEvent e){
           MyFindDialog.this.dispose();
         }
    });
  }
  public void showFind(){
    setTitle("茫扁");
    setSize(280,60);
    setVisible(true);
  }
  public void showReplace(){
    setTitle("茫酒 官操扁");
    setSize(280,110);
    setVisible(true);
  }
 
  private void find(){
    String text=ta.getText();
    String str=tFind.getText();
    int end=text.length();
    int len=str.length();
    int start=ta.getSelectionEnd();
    if(start==end)start=0;
    for( ;start<=end-len;start++){
      if(text.substring(start,start+len).equals(str)){
         ta.setSelectionStart(start);
         ta.setSelectionEnd(start+len);
         return;
      }
    }
    ta.setSelectionStart(end);
    ta.setSelectionEnd(end);
  }
  private void replace(){
    String str=tReplace.getText();
    if(ta.getSelectedText().equals(tFind.getText()))
      ta.replaceRange(str,ta.getSelectionStart(),ta.getSelectionEnd());   
    else find();
  }
  public void actionPerformed(ActionEvent e){
    if(e.getSource()==bFind)
      find();
    else if(e.getSource()==bReplace)
      replace();
  }
}
public class MyFindDialogTest{
  public static void main(String[] args){
    Frame f=new Frame("MyFindDialog Test");
    TextArea ta=new TextArea();
    f.add(ta);
    MyFindDialog fDlg=new MyFindDialog(f,ta);
    f.setSize(300,300);
    f.setVisible(true);
    fDlg.showReplace();
  }
}

⌨️ 快捷键说明

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