注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

回首望星辰

See you in the next world

 
 
 

日志

 
 

CEdit中获取一行字符串   

2009-02-26 09:34:02|  分类: 软件开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

对于采用GetLine()调用,其函数说明有2种。

1.int GetLine(     int nIndex,     LPTSTR lpszBuffer   ) const;  2.int GetLine(     int nIndex,     LPTSTR lpszBuffer,     int nMaxLength   ) const;

Remarks : The copied line does not contain a null-termination character.

Return Value

  The number of bytes actually copied. The return value is 0 if the line number specified by nIndex is greater than the number of lines in the edit control.

getline做了copy后是不给你加null结束符的。因此需要自己在定义的char字符串末尾添加。

ps:getline1在release版下会返回0,原因不明。getline2可正常使用

=================================

int LineLength(     int nLine = -1   ) const;

该函数是应该返回指定行的长度,但是如果不仔细看msdn的说明,很容易误解nLine是指cedit行中的某一行行数而代入其中,并得到错误的结论。

nLine

Specifies the character index of a character in the line whose length is to be retrieved. If this parameter is –1, the length of the current line (the line that contains the caret) is returned, not including the length of any selected text within the line. When LineLength is called for a single-line edit control, this parameter is ignored.

就是说nLine是字符串的字符索引,在多行情况下所以它必须通过LineIndex函数来获取。在msdn中如下描述,

   Use the LineIndex member function to retrieve a character index for a given line number within a multiple-line edit control.

而LineIndex函数说明如下:

all this function to retrieve the character index of a line within a multiple-line edit control.

int LineIndex(     int nLine = -1   ) const;

nLine

Contains the index value for the desired line in the text of the edit control, or contains –1. If nLine is –1, it specifies the current line, that is, the line that contains the caret.

该nLine才是真正的CEdit中的某一行列。也就是我们通过getlinecount()获取到cedit的行数后,在到每一行中去找一个character index,再才能确定一行的长度。

 

 

  评论这张
 
阅读(1330)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017