C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作
十一、上下左右移动光标位
private void moveLeft()
{
object moveUnit = Microsoft.Office.Interop.Word.WdUnits.wdWord;
object moveCount = 1;
object moveExtend = Microsoft.Office.Interop.Word.WdMovementType.wdExtend;
thisDocument.Application.Selection.MoveLeft(ref moveUnit, ref moveCount, ref MissingValue);
}
private void moveRight()
{
if(selection==null||selection!=document.Application.Selection)
selection=document.Application.Selection;
object dummy=System.Reflection.Missing.Value;
object count=1;
object Unit=Word.WdUnits.wdCharacter;
selection.MoveRight(ref Unit,ref count,ref dummy);
}
十二、取得当前光标位
public void GetCursor()
{
if(selection==null||selection!=document.Application.Selection)
selection=document.Application.Selection;
object a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);
object b=selection.get_Information(Word.WdInformation.wdFirstCharacterColumnNumber);
object c=selection.get_Information(Word.WdInformation.wdActiveEndAdjustedPageNumber);
MessageBox.Show(a.ToString()+”行,”+b.ToString()+”列,”+c.ToString()+”页”);
}
十三、定位到指定行或相对行
/// <summary>
/// 定位到指定行
/// </summary>
/// <param name=”lineNum”>行号</param>
private void gotoAbsolutLine(int lineNum)
{
if(selection==null||selection!=document.Application.Selection)
selection=document.Application.Selection;
object dummy=System.Reflection.Missing.Value;
object what=Word.WdGoToItem.wdGoToLine;
object which=Word.WdGoToDirection.wdGoToFirst;
object count=lineNum;
selection.GoTo(ref what,ref which,ref count,ref dummy);
}
/// <summary>
/// 定位到相对行,例如+4
/// </summary>
/// <param name=”lineNum”>行数</param>
private void gotoOppositeLine(int lineNum)
{
if(selection==null||selection!=document.Application.Selection)
selection=document.Application.Selection;
object dummy=System.Reflection.Missing.Value;
object what=Word.WdGoToItem.wdGoToLine;
object which;
if(lineNum<0)
which=Word.WdGoToDirection.wdGoToPrevious;
else
which=Word.WdGoToDirection.wdGoToNext;
object count=Math.Abs(lineNum);
selection.GoTo(ref what,ref which,ref count,ref dummy);
}
十四、定位到文档最后一行
private void gotoLastLine(Document thisDocument)
{
object dummy = System.Reflection.Missing.Value;
object what = WdGoToItem.wdGoToLine;
object which = WdGoToDirection.wdGoToLast;
object count = 99999999;
thisDocument.Application.Selection.GoTo(ref what, ref which, ref count, ref dummy);
}
十五、定位到第一个字符
private void gotoFirstCharacter()
{
if(selection==null||selection!=document.Application.Selection)
selection=document.Application.Selection;
int oldLine=0;
gotoAbsolutLine(1);
object a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);//得到当前行号
while(oldLine!=int.Parse(a.ToString()))//一直按右键,直到光标不再往下了为止
{
oldLine++;
moveRight();
a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);
}
gotoAbsolutLine(int.Parse(a.ToString()));
}
十六、定位到最后一个字符
public void gotoLastCharacter()
{
if(selection==null||selection!=document.Application.Selection)
selection=document.Application.Selection;
gotoLastLine();
object dummy=System.Reflection.Missing.Value;
object count=99999999;
object Unit=Word.WdUnits.wdCharacter;
selection.MoveRight(ref Unit,ref count,ref dummy);
}
二十一、 取得行、列、页信息
public string WordGetRCP()
{
selection=document.Application.Selection;//wd.Selection;
object a=selection.get_Information(Word.WdInformation.wdFirstCharacterLineNumber);
object b=selection.get_Information(Word.WdInformation.wdFirstCharacterColumnNumber);
object c=selection.get_Information(Word.WdInformation.wdActiveEndAdjustedPageNumber);
return a.ToString()+”,”+b.ToString()+”,”+c.ToString();
}
C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作的更多相关文章
- K1 K2作为中断源控制红色LED灯,实现任意键按一下LED灯亮或者灭
#include "stm32f10x.h" // 相当于51单片机中的 #include <reg51.h> #include "stm32f10x_gpi ...
- [No000018E]Vim快速跳转任意行、任意列以及高亮显示当前行、当前列方法-Vim使用技巧(3)
vim提供了丰富的快速跳转任意行.任意列的方法,方便高效地移动光标,定位文件位置. 一.Vim行跳转 使用vim查看文件时,使用以下命令可以快速跳转文件首.尾行,方便对整个文件有个全局把握. 1.1 ...
- 解决“Word无法访问您试图使用的功能所在的网络位置”问题
解决“Word无法访问您试图使用的功能所在的网络位置”问题 打开Word时出现现现在的对话框,按取消,又可以打开word文档 按取消时,仍然可以打开word文档.为了解决这个问题,我借助网络,知道这是 ...
- DataGridView 访问任意行不崩溃
int index= this.dataGridView1.rows.Add(); 先执行这行代码,然后访问任意行,不崩溃, 赋值不存在的行,只是不显示,或者无值. 什么原理呢? 一些其他 priva ...
- centos 目录结构 快捷键 ls命令,alias别名,so:动态库 a:静态库,环境变量PATH,Ctrl+z 暂停命令,Ctrl+a 光标到行首,Ctrl+e 光标到行尾,Ctrl+u 删除光标前所有字符 Ctrl+r 搜索命 hash命令 Ctrl+左箭头/右箭头 cd命令 第三节课
centos 目录结构 快捷键 ls命令,alias别名,so:动态库 a:静态库,环境变量PATH,Ctrl+z 暂停命令,Ctrl+a 光标到行首,Ctrl+e 光标到行尾,Ctrl+u 删除光标 ...
- Vim-复制选中内容至系统剪贴板,光标移动到指定行的行首和行尾
1.全选并复制到系统剪贴板 ggVG或ggvG 然后 "+y gg 让光标移到首行,在vim才有效,vi中无效 V 是进入Visual(可视)模式 G 光标移到最后一行 "+y 复 ...
- Java 如何给Word文档添加多行文字水印
前言 我在以往的文章中曾介绍过如何给Word文档添加文本水印和图片水印,及怎样删除文档中的水印.关于文本水印,之前那篇教程里主要指的是单行字体的水印,而在操作Word文档时,有时也会碰到需要添加多行文 ...
- Android百度地图开发03之地图控制 + 定位
前两篇关于百度地图的blog写的是,一些基本图层的展示 和 覆盖物的添加+地理编码和反地理编码. 接下来,这篇blog主要说一些关于地图控制方面的内容和定位功能. 百度地图提供的关于地图的操作主要有: ...
- js实现类似微信网页版在可编辑的div中粘贴内容时过滤剪贴板的内容,光标始终在粘贴内容后面,以及将光标定位到最后的方法
过滤剪贴板内容以及定位可编辑div光标的方法: <!DOCTYPE html><html lang="en"><head> <meta ...
随机推荐
- PHP-Phalcon框架中的数据库操作
> 本文描述了PHP-Phalcon框架中数据库操作方法,主要讨论Phalcon框架的Model组件中的操作方法.更详细的Model介绍请参考:官方文档 1. 连接数据库 在Phalcon框架中 ...
- SaaS系列介绍之十四: SaaS软件开发分析
1 引言 真正的问题,不是电脑是否具备思考能力,而是人类是否具备这种能力 ________B.F.Skinner<计算机科学> SaaS模式不同于传 ...
- *[hackerrank]Consecutive Subsequences
https://www.hackerrank.com/contests/w6/challenges/consecutive-subsequences 求数组中被k整除的子段和有几个.这个要利用sum[ ...
- JavaScript中样式,方法 函数的应用
JavaScript中一个字母都不能错,编写的时候他不报错,也不提示,只有在执行的时候才会提示错误位置 . 一.样式 .waring {background-color:yellow } .highl ...
- 转:[Android问答] 开发环境问题集锦
工欲善其事,必先利其器. 和iOS开发相比,Android的开发环境的版本比较多,随之而来的问题也多.显然,我们不应该浪费宝贵的时间在解决开发环境带来的问题上,为此本文总结了常见的开发环境问题和解决方 ...
- PHP的线程安全与非线程安全版本的区别
Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍. ...
- 07-语言入门-07-A Famous Music Composer
题目地址: http://blog.csdn.net/sevenmit/article/details/8231994 描述 Mr. B is a famous music composer. On ...
- git cheat sheet,git四张手册图
- POJ 2828 Buy Tickets (线段树 单点更新 变形)
题目链接 题意:有N个人排队,给出各个人想插队的位置和标识,要求输出最后的序列. 分析:因为之前的序列会因为插队而变化,如果直接算时间复杂度很高,所以可以用 线段树逆序插入,把序列都插到最后一层,le ...
- velocity加减运算注意格式 ,加减号的左右都要有空格
velocity加减运算注意格式 ,加减号的左右都要有空格 #set( $left= $!biz.value - $vMUtils.getReturnMoney($!biz.billBuy) )