拼写检查器使用单词
本文关键字:单词 检查 | 更新日期: 2023-09-27 18:26:05
我正在用c#为拼写检查器编写一段代码。我在网上找到了这个代码。我是c#的新手,无法理解代码。
我在以下网站上找到了此代码:http://www.codeproject.com/Articles/4572/Using-Word-s-spellchecker-in-C
我可以了解一下代码中实际发生的事情的一般指南吗:
using Word;
using System.Reflection;
private void button1_Click(object sender, System.EventArgs e)
{
fSpellCheck(textBox1 , label1 );
}
public void fSpellCheck(TextBox tBox, Label lLbl)
{
int iErrorCount = 0;
Word.Application app = new Word.Application();
if (tBox.Text.Length > 0)
{
app.Visible=false;
// Setting these variables is comparable
// to passing null to the function.
// This is necessary because the C# null
// cannot be passed by reference.
object template=Missing.Value;
object newTemplate=Missing.Value;
object documentType=Missing.Value;
object visible=true;
object optional = Missing.Value;
_Document doc = app.Documents.Add(ref template,
ref newTemplate, ref documentType, ref visible);
doc.Words.First.InsertBefore (tBox.Text );
Word.ProofreadingErrors we = doc.SpellingErrors;
iErrorCount = we.Count;
doc.CheckSpelling( ref optional, ref optional, ref optional,
ref optional, ref optional, ref optional, ref optional,
ref optional, ref optional, ref optional,
ref optional, ref optional);
if (iErrorCount == 0)
lLbl.Text = "Spelling OK. No errors corrected ";
else if (iErrorCount == 1)
lLbl.Text = "Spelling OK. 1 error corrected ";
else
lLbl.Text = "Spelling OK. " + iErrorCount +
" errors corrected ";
object first=0;
object last=doc.Characters.Count -1;
tBox.Text = doc.Range(ref first, ref last).Text;
}
else
lLbl.Text = "Textbox is empty";
object saveChanges = false;
object originalFormat = Missing.Value;
object routeDocument = Missing.Value;
app.Quit(ref saveChanges, ref originalFormat, ref routeDocument);
}
我对C#没有太多经验,但我想你有一个带有GUI、按钮、标签和文本框的应用程序。
方法button1_Click
需要为按钮分配一个操作,当被单击时,它是按钮的一种事件侦听器。单击此按钮时,将执行button1_Click
,并调用方法fSpellCheck(textBox1 , label1 );
。
方法fSpellCheck(textBox1 , label1 );
实现了检查由文本框插入的单词的算法(注意fSpellCheck
的参数中的文本框引用)。该方法检查单词是否有错误,如果单词正确或错误(有错误),或者文本框为空,则该方法在标签lLbl
中打印单词控制的结果。
这基本上就是上面代码所做的。
1) 它以隐藏模式打开一个新的Word实例
2) 它将文本框中的文本插入文档的第一部分
3) 它调用单词文档上的拼写检查器
4) 它从拼写检查器中获取错误计数,并将错误数打印到标签
5) 它要求Word更正文档中的错误
6) 它将单词文档中的更正文本复制回您的文本框
7) 它关闭文档并退出隐藏的Word实例
您在项目中需要做什么:
1.创建一个标签(如果您还没有)
2.创建一个文本框(如果您还没有)
3.创建一个按钮(如果您还没有)
在按钮中添加一个点击事件,然后在该代码中,像在本代码中那样调用fSpellCheck,并将标签和文本框作为参数。