RichTextBox1.SelStart = 1
就是说把光标移动到第一个字符每天加10分,我一年前注册现在分数已经由3000多了.所以早注册早合算.多注册多合算.
就是说把光标移动到第一个字符每天加10分,我一年前注册现在分数已经由3000多了.所以早注册早合算.多注册多合算.
解决方案 »
- vb中定时插入数据,时间不准的问题(急,在线等,解决立刻送分)
- vb如何清除火狐浏览器的历史访问记录和COOKIE 以及删除 火狐浏览器
- 一个子程序问题??在线等
- 多多捧场啊,有分.
- 一个 Timer1_timer() 问题
- 用户sa登陆失败,with块变量未定义,求大神指导
- 招聘 有意者请进
- 如何实现htm文件格式到txt文件格式的转变?
- 帮我看看关于ADO添加记录的代码,不知道为什么老不行。
- 请问哪里有VB控件大全的电子书下载
- 在打印完成时总是多走一页空白纸啊!!! 怎么解决!!!!?????????? 急啊!!!
- 高分相送:想在程序中调用WORD,实现公文排版功能,Word能嵌入到VB中吗,到什么程度?
把光标移动到第一个字符,然后怎么办啊?难不成把光标一个字符一个字符的往后移,然后判断是否到了另一行了?(不会吧?)
另外,怎么判断到了另外一节了?判断是否是回车符吗?
还有一个问题呢?没有人指点一下吗?我顶~~~~
至于第二个问题,也不是很好实现。所以用RichTextBox实现你提出的问题还是比较困难的。
不知道有没有别的更好的办法,反正我都是这样实现的。
richtextbox.selstart=i
应该可以定位到行了,剩下的你自己编一下!
多谢freelazy(懒人)帮忙,我会多过你分的,多谢
http://www.csdn.net/develop/Read_Article.asp?Id=16318[源代码内容]取得TextBox、RichTextBox光标所在的行和列(支持中文) ASPBIT(原作) 关键字 行,列,TextBox,RichTextBox,光标'************************************************************
'功能:取得TextBox、RichTextBox光标所在的行和列
' 支持中文,一个汉字算一列
' 有问题请给我写邮件
'作者:Matrix
'邮件:[email protected]
'************************************************************
Option Explicit
Private Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hWnd As Long, ByVal wMsg As _
Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias _
"RtlMoveMemory" (pDst As Any, pSrc As Any, _
ByVal ByteLen As Long)Private Const WM_USER = &H400
Private Const EM_EXGETSEL = (WM_USER + 52)
Private Const EM_LINEFROMCHAR = &HC9
Private Const EM_LINEINDEX = &HBBPrivate Type CHARRANGE
cpMin As Long
cpMax As Long
End Type'取得光标所在的列
Public Function GetCurCol(ByVal hWnd As Long, ByVal Text As String) As Long
Dim LineIndex As Long
Dim SelRange As CHARRANGE
Dim TempStr As String
Dim TempArray() As Byte
Dim TempText() As Byte
TempArray = StrConv(Text, vbFromUnicode)
'取得当前行第一个字符的位置
LineIndex = SendMessage(hWnd, EM_LINEINDEX, -1, 0)
'取得当前被选中文本的位置 适用于 RichTextBox
'TextBox 用 EM_GETSEL 消息
Call SendMessage(hWnd, EM_EXGETSEL, 0, SelRange)
If SelRange.cpMin - LineIndex = 0 Then
GetCurCol = 1
Else
TempStr = String(SelRange.cpMin - LineIndex, 13)
'复制当前行开始到选择文本开始的文本
CopyMemory ByVal StrPtr(TempStr), ByVal StrPtr(TempArray), SelRange.cpMin - LineIndex
TempText = TempStr
'删除无用的信息
ReDim Preserve TempText(SelRange.cpMin - LineIndex - 1)
'转换为 Unicode
TempStr = StrConv(TempText, vbUnicode)
GetCurCol = Len(TempStr) + 1
End If
End Function'取得光标所在的行
'此函数非原创
Public Function GetCurRow(ByVal hWnd As Long) As Long
Dim LineIndex As Long
'wParam参数设置为-1 取得当前行的字符位置
LineIndex = SendMessage(hWnd, EM_LINEINDEX, -1, 0)
'根据参数wParam指定的字符位置返回该字符所在的行号
GetCurRow = SendMessage(hWnd, EM_LINEFROMCHAR, LineIndex, 0) + 1
End Function