用java编写记事本程序,如何实现查找,替换

 我来答
niu258375967
推荐于2016-05-13 · TA获得超过248个赞
知道小有建树答主
回答量:181
采纳率:100%
帮助的人:0
展开全部
if(p.getActionCommand()=="查找 "||p.getSource()==findc) // 创建查找对话框;
{find=new Dialog(this,"查找");
JPanel p1=new JPanel();
JPanel p2=new JPanel();
findtxt=new JTextField(7);
p1.add(new JLabel("输入要查找字符:"));
p1.add(findtxt);
p2.add(findenter);
find.add("Center",p1);
find.add("South",p2);
find.setSize(200,100);
find.show();
}
if(p.getSource()==findenter) ///点击查找对话框的确定按钮后的事件处理
{
if(findtxt.getText().equals(""))
{find.dispose();}
else if(!findtxt.getText().equals(""))
{ find.dispose();
str=txt1.getText();
startp=str.indexOf(findtxt.getText());
endp=startp+findtxt.getText().length();
txt1.select(startp,endp);
m26.setEnabled(true);
newendp=endp;////////获取这次查找的终点
notfindmethod();
}
}
//////////////////////////////////////////////////////////
if(p.getActionCommand()=="查找下一个 ")
{
nexttemp=newendp; /////获取上次查找的终点做为未查找字符串的起点
String strall=txt1.getText();
txt1.select(nexttemp,strall.length()); /////选中所有未查找的字符串
strnext=txt1.getSelectedText();
newstartp=strnext.indexOf(findtxt.getText())+nexttemp;/////在未查找的字符串里搜索对应字符的在TXT1中的位置
newendp=newstartp+findtxt.getText().length();
txt1.select(newstartp,newendp); ////找到相应文本,并选择
notfindmethod();
}
if(p.getActionCommand()=="替换 ")
{m271.setEnabled(true);
replace=new Dialog(this,"替换"); // 创建替换对话框;
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
findtxt=new JTextField(7);
repltxt=new JTextField(7);
p1.add(new JLabel("输入原始字符:"));
p1.add(findtxt);
p2.add(new JLabel("输入替换字符:"));
p2.add(repltxt);
p3.add(replb);
replace.add("North",p1);
replace.add("Center",p2);
replace.add("South",p3);
replace.setSize(200,150);
replace.show();
}
if(p.getSource()==replb) ///点击替换对话框的确定按钮后的事件处理
{
replace.dispose();
str=txt1.getText();
startp=str.indexOf(findtxt.getText());
endp=startp+findtxt.getText().length();
txt1.replaceRange(repltxt.getText(),startp,endp);
newendp=endp; ///获取这次替换的终点
}
if(p.getActionCommand()=="替换下一个")
{nexttemp=newendp; /////获取上次查找的终点做为未查找字符串的起点
String strall=txt1.getText();
txt1.select(nexttemp,strall.length()); /////选中所有未查找的字符串
strnext=txt1.getSelectedText();
newstartp=strnext.indexOf(findtxt.getText())+nexttemp;/////在未查找的字符串里搜索对应字符的在TXT1中的位置
newendp=newstartp+findtxt.getText().length();
txt1.select(newstartp,newendp);
notfindmethod();
txt1.replaceRange(repltxt.getText(),newstartp,newendp);//替换字符
}
if(p.getActionCommand()=="全选 ")
{txt1.selectAll(); }
要看全部代码,我空间里有,自己看
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式