点击或拖拽改变大小

Functions.MPosToLc 方法

X#
返回格式化字符串中字符的行和列位置。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION MPosToLc(
	cText,
	nWidth,
	nPos,
	nTabSize,
	lWrap
) AS ARRAY CLIPPER
查看代码

参数

cText (Optional)
类型:__Usual
一个字符串。
nWidth (Optional)
类型:__Usual
cText 格式化后每行的长度。
nPos (Optional)
类型:__Usual
在格式化文本中的字节位置,从 1 开始计数。
nTabSize (Optional)
类型:__Usual
用户按下 Tab 时插入的字符数。
如果未指定 nTabSize,则插入 4 个空格。
lWrap (Optional)
类型:__Usual
单词换行标志。
默认值为 TRUE。

返回值

类型:__Array
包含指定位置字符的行和列号的数组。
备注
MPosToLC() 确定与 cText 中特定字符位置对应的格式化行和列。请注意,返回的行号是以 1 为基数,列号是以 0 为基数。
这与 MemoEdit() 兼容。nPos 是以 1 为基数,这与 At()、RAt() 和其他字符串函数兼容。 MPosToLC() 与 MLCToPos() 一起使用,以创建搜索例程或其他文本处理,用于 MemoEdit()。
示例
此示例确定文本字符串第十个字符对应的行和列,假设格式化宽度为五列。
五列的格式化宽度会导致前 3 个单词分别放在一行中。
文本的第十个字符是 "side" 中的 "s"。
单词 "side" 将位于格式化文本的第三行的最左侧列,因此返回值为 {3, 0}:
X#
1cText := "注意面包的涂抹面向哪一侧" + "。"
2aLC := MPosToLC(cText, 5, 10)    // 结果: {3, 0}
参见