设为首页 加入收藏

TOP

子视窗控制项(四十三)
2010-12-30 21:12:42 来源: 作者: 【 】 浏览:32687
Tags:视窗 控制
只概要地说明一下。

这些讯息允许您剪下、复制或者清除目前被选择的文字。使用者使用滑鼠或者Shift键加上游标控制项键来选择文字并进行上面的操作,这样,在编辑控制项中选中的文字将被加亮:

SendMessage (hwndEdit, WM_CUT, 0, 0) ;
SendMessage (hwndEdit, WM_COPY, 0, 0) ;
SendMessage (hwndEdit, WM_CLEAR, 0, 0) ;

WM_CUT将目前选择的文字从编辑控制项中移走,并将其发送到剪贴簿中;WM_COPY将选择的文字复制到剪贴簿上并保持编辑控制项中的内容完好无损;WM_CLEAR将选择的内容从编辑控制项中删除,但是不向剪贴簿中发送。

您也可以将剪贴簿上的文字插入到编辑控制项中的游标位置:

SendMessage (hwndEdit, WM_PASTE, 0, 0) ;

您可以取得目前选择的起始位置和末尾位置:

SendMessage (hwndEdit, EM_GETSEL, (WPARAM) &iStart,
(LPARAM) &iEnd) ;

结束位置实际上是最後一个选择字元的位置加1。

您可以选择文字:

SendMessage (hwndEdit, EM_SETSEL, iStart, iEnd) ;

您还可以使用别的文字来置换目前的选择内容:

SendMessage (hwndEdit, EM_REPLACESEL, 0, (LPARAM) szString) ;

对多行编辑控制项,您可以取得行数:

iCount = SendMessage (hwndEdit, EM_GETLINECOUNT, 0, 0) ;

对任何特定的行,您可以取得距离编辑缓冲区文字开头的偏移量:

iOffset = SendMessage (hwndEdit, EM_LINEINDEX, iLine, 0) ;

行数从0开始计算,iLine值为-1时传回包含游标所在行的偏移量。您可以取得行的长度:

iLength = SendMessage (hwndEdit, EM_LINELENGTH, iLine, 0) ;

并将行本身复制到一个缓冲区中:

iLength = SendMessage (hwndEdit, EM_GETLINE, iLine, (LPARAM) szBuffer) ;

清单方块类别
 

我在本章讨论的最後一个预先定义子视窗控制项是清单方块。

首页 上一页 40 41 42 43 44 45 46 下一页 尾页 43/61/61
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇功能表及其他资源 下一篇计时器

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: