社区
C#
帖子详情
记事本查找功能怎样实现??
weishaoliu
2009-05-06 11:51:46
怎样实现记事本的查找功能,我在网上搜的时候看到好像有个FindDiaog控件,为什么我找不到啊。
请各位指点指点。
...全文
695
15
打赏
收藏
记事本查找功能怎样实现??
怎样实现记事本的查找功能,我在网上搜的时候看到好像有个FindDiaog控件,为什么我找不到啊。 请各位指点指点。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pytorch小白
2011-11-05
打赏
举报
回复
[Quote=引用 12 楼 weishaoliu 的回复:]
我设计了一个查找窗体Form2 怎样把主窗体Form1和查找窗体Form2之间联系起来
我的意思是我的主窗体上有个richTextBox1
而我在查找窗体Form2的按钮控件上编程的时候
想输入“richTextBox1”
但是没有智能提示
这不是意味着有错误吗
是不是这两个窗体之间没有联系起来啊
[/Quote]
在form1 里把richTextBox1的属性改为public ,在form2构造函数里,
public Form1 mainForm ;//定义一个form1的类对象
RichTextBox richbox = new RichTextBox(); //定义一个 RichTextBox对象
string richtext = string.Empty; //初始化richtext为空
string searchtext = string.Empty; //初始化查询空searchtxt 为空
int findPlace = 0;
public Form2(Form1 frm)
{
InitializeComponent( );
mainForm = frm ;
richbox = mainForm.richTextBox1 ;
richtext = richbox.Text ;
}
这样你在form2里,通过richbox,可以操作form1里的richTextBox1
pytorch小白
2011-11-05
打赏
举报
回复
9楼方法可行!
wuyq11
2009-05-06
打赏
举报
回复
参考
小弟万元户
2009-05-06
打赏
举报
回复
[Quote=引用 3 楼 mdq001 的回复:]
indexof 就行吧 ,返回位置,再加上搜索字符串的长度,设置textbox.select(start,length)
[/Quote]
顶
mdq001
2009-05-06
打赏
举报
回复
indexof 就行吧 ,返回位置,再加上搜索字符串的长度,设置textbox.select(start,length)
liyoubaidu
2009-05-06
打赏
举报
回复
同意
zgke
2009-05-06
打赏
举报
回复
FindDiaog 这个可能是自己写的把.
deng520159
2009-05-06
打赏
举报
回复
传递参数即可,richtextbox可以满足你的功能的,
weishaoliu
2009-05-06
打赏
举报
回复
我设计了一个查找窗体Form2 怎样把主窗体Form1和查找窗体Form2之间联系起来
我的意思是我的主窗体上有个richTextBox1
而我在查找窗体Form2的按钮控件上编程的时候
想输入“richTextBox1”
但是没有智能提示
这不是意味着有错误吗
是不是这两个窗体之间没有联系起来啊
csz_1987
2009-05-06
打赏
举报
回复
[Quote=引用 3 楼 mdq001 的回复:]
indexof 就行吧 ,返回位置,再加上搜索字符串的长度,设置textbox.select(start,length)
[/Quote]
顶。。。我也正在找着方面资料。。。谢谢。。。
yuanhuiqiao
2009-05-06
打赏
举报
回复
标准控件没FindDiaog
幕夜
2009-05-06
打赏
举报
回复
public void button1_Click(object sender, EventArgs e)
{
if (textSearch.Text != "")//搜索的字符
{
string notmatchcase = textSearch.Text.ToUpper();//用不不区分大小写
string RichTextBoxtext;
Form1 mainForm = (Form1)this.Owner;
{
if (mainForm.textmain.Text.Length > 0)
{
if (checkBox1.Checked == true && radioDown.Checked == true)
{
if ((FindPlace = mainForm.textmain.Text.IndexOf(textSearch.Text, FindPlace)) == -1)
{
MessageBox.Show("没有搜索到!", "记事本", MessageBoxButtons.OK, MessageBoxIcon.Information);
FindPlace = 0; //没有找到,重置查找位置为文本起点}
}
else
{
mainForm.textmain.Select(FindPlace, textSearch.Text.Length);
FindPlace = FindPlace + 1;
mainForm.Activate();//激活SearchForm窗体,给予焦点
mainForm.textmain.Focus();
}
}
else if (checkBox1.Checked == false && radioDown.Checked == true)
{
RichTextBoxtext = mainForm.textmain.Text.ToUpper();
if ((FindPlace = RichTextBoxtext.IndexOf(notmatchcase, FindPlace)) == -1)
{
MessageBox.Show("没有搜索到!","记事本",MessageBoxButtons .OK ,MessageBoxIcon.Information );
FindPlace = mainForm.textmain.Text.Length; //没有找到,重置查找位置为文本起点
}
else
{
mainForm.textmain.Select(FindPlace, textSearch.Text.Length);//选中找到的文本,使其明显
FindPlace = FindPlace + textSearch.Text.Length;
mainForm.Activate();//激活SearchForm窗体,给予焦点
mainForm.textmain.Focus();
}
}
else if (checkBox1.Checked == true && radioUp.Checked == true)
{
if (i == 0)
{
FindPlace = mainForm.textmain.Text.Length;
i++;
}
if ((FindPlace = mainForm.textmain.Text.LastIndexOf(textSearch.Text, FindPlace)) == -1)
{
MessageBox.Show("没有搜索到!", "记事本", MessageBoxButtons.OK, MessageBoxIcon.Information);
FindPlace = 0; //没有找到,重置查找位置为文本起点}
}
else
{
mainForm.textmain.Select(FindPlace, textSearch.Text.Length);
FindPlace = FindPlace-textSearch .Text .Length ;
mainForm.Activate();//激活SearchForm窗体,给予焦点
mainForm.textmain.Focus();
}
}
else
{
RichTextBoxtext = mainForm.textmain.Text.ToUpper();
if (i == 0)
{
FindPlace = mainForm.textmain.Text.Length;
i++;
}
{
if ((FindPlace = RichTextBoxtext.LastIndexOf(notmatchcase, FindPlace)) == -1)
{
MessageBox.Show("没有搜索到!", "记事本", MessageBoxButtons.OK, MessageBoxIcon.Information);
FindPlace = 0; //没有找到,重置查找位置为文本起点}
}
else
{
mainForm.textmain.Select(FindPlace, textSearch.Text.Length);//选中找到的文本,使其明显
FindPlace = FindPlace - textSearch.Text.Length;
mainForm.Activate();
mainForm.textmain.Focus();
}
}
}
}
}
}
}
柳晛
2009-05-06
打赏
举报
回复
public int Find(char[ ] characterSet, int start, int end)
System.Windows.Forms.RichTextBox 的成员
摘要:
在 System.Windows.Forms.RichTextBox 控件的某个文本范围中搜索字符列表的某个字符的第一个实例。
参数:
end: 控件文本中结束搜索的位置。
characterSet: 要搜索的字符数组。
start: 控件文本中开始搜索的位置。
返回值:
控件内找到搜索字符的位置。
异常:
System.ArgumentNullException: characterSet 为空。
System.ArgumentException: start 小于 0 或者大于控件中文本的长度。
calen
2009-05-06
打赏
举报
回复
indexof
柳晛
2009-05-06
打赏
举报
回复
rtxb.Find(被查找字符串)
rtxb.SelectionColor = Color.颜色
记事本
查找
替换
功能
实现
c#中
记事本
查找
替换
功能
的
实现
很多人都无法编译出来。现在我给大家分享一下,希望大家能用的上。。。
C#
记事本
查找
功能
源码
C#
记事本
查找
功能
源码,仿windows
记事本
C#
记事本
—
查找
、替换
功能
~开源的心拥抱世界~ C#
记事本
查找
替换
功能
的
实现
,有详细的注释,还有任务描述。欢迎广大朋友下载。如有修改请发我一份,谢谢!
Qt
记事本
功能
齐全,主要
实现
打开、新建、保存、另存为、
查找
、居中、字体、颜色、剪切、复制、粘贴等
功能
运用Qt开发工具来
实现
一个
记事本
,用户图形界面操作,通过Qt提供的图形库来设计
记事本
的管理、应用基本窗口,主要
实现
打开、新建、保存、另存为、
查找
、居中、字体、颜色等
功能
设计,同时在软件内部
实现
对于这些
功能
的支持和
实现
。还有对用户剪切、复制、粘贴、等
功能
的支持 核心代码讲解 1、打开文件
功能
void MainWindow::on_action_2_triggered() { QString filename = QFileDialog::getOpenFileName(this); loadFile(filename); } 打开文件on_action_2_triggered()通过转到槽
实现
首先定义一个Qstring类型的filename让它获取你文件名,其次寻找它的本地连接。 3、保存文件
功能
void MainWindow::on_action_3_triggered() { if(isSaved){ saveFile(curFile); } else{ do_file_SaveAS(); } } 保存文件
功能
on_action_3_triggered()通过转到槽
实现
,先判断bool型的isSaved是否是正确的,如果错则保存当前文件,否则执行另存为。 5、关闭
功能
void MainWindow::on_action_5_triggered() { if(close){ QMessageBox::information(this,"提示","文件尚未保存,关闭"); }else{ ui->textEdit->close(); } } 关闭
功能
on_action_5_triggered()先对文本进行判断是否是关闭的,如果是错弹出对话框提示消息文件尚未保存,关闭,否则对文档进行关闭 11、
查找
功能
//
查找
void MainWindow::close_findhangshu() { ui->gridLayoutWidget->close(); } close_findhangshu()对
查找
对话框进行关闭函数。 void MainWindow::on_action_11_triggered() { QDialog *closefind=new QDialog(this); QDialog *findDlg=new QDialog(this); find_textLineEdit=new QLineEdit(findDlg); QPushButton *find_Bth=new QPushButton(tr("
查找
下一个"),findDlg); QPushButton *close_find=new QPushButton(tr("关闭"),closefind); ui->gridLayout->addWidget(find_textLineEdit); ui->gridLayout->addWidget(find_Bth); ui->gridLayout->addWidget(close_find); connect(find_Bth,SIGNAL(clicked()),this,SLOT(show_findText())); connect(close_find,SIGNAL(clicked()),this,SLOT(close_findhangshu())); }
查找
功能
on_action_11_triggered()函数通过转到槽
实现
下面部分:先定义两个QDialog类型 指针变量*closefind和*findDlg,对它们进行新创建空间, find_textLineEdit=new QLineEdit(findDlg);新建一个空间对QlineEdit它进行传参,将findDlg传入目的是
查找
在文档中对应的文字,QPushButton *find_Bth=new QPushButton(tr("
查找
下一个"),findDlg);QPushButton *close_find=new QPushButton(tr("关闭"),closefind);这两个代码作用相同定义两个Qpubutton当点击
查找
功能
弹出对话框时在对话框中
实现
查找
下一个和关闭connect(find_Bth,SIGNAL(clicked()),this,SLOT(show_findText()));connect(close_find,SIGNAL(clicked()),this,SLOT(close_findhangshu()));点击
查找
下一个按钮时对它进行连接,执行show_findText()函数中的
查找
操作,如果点击关闭执行上述所说的close_findhangshu()关闭对话框操作 void MainWindow:: show_findText() { QString findText=find_textLineEdit->text(); if(!ui->textEdit->find(findText,QTextDocument::FindBackward)) { QMessageBox::warning(this,tr("
查找
"),tr("找不到 %1").arg(findText)); } } show_findText()此函数先定义QString类型 findText值,对文本进行扫描,如果文本不能找到找到则提示找不到。 本人也只是一个学生,记得点赞哦!
c#
实现
记事本
功能
c#
实现
记事本
功能
C#
111,126
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章