TechnoFantasy(www.apple vb .com) ,解决如下: Public Const WM_USER = H400 Public Const EM_SETTARGETDEVICE =" name="description" />

将RichTextBox设置为自动换行或非自动换行

发表于:2007-05-25来源:作者:点击数: 标签:换行或非RichTextBox自动设置
近日研究文本控件和字符串,研究得头混脑胀,问题真是太多了。 这只是其中的一个问题,答案来自问专家网站和CSDN的 ant asy" target=_blank> TechnoFantasy(www.apple vb .com) ,解决如下: Public Const WM_USER = H400 Public Const EM_SETTARGETDEVICE =

  近日研究文本控件和字符串,研究得头混脑胀,问题真是太多了。
  这只是其中的一个问题,答案来自问专家网站和CSDN的antasy" target=_blank>clearcase/" target="_blank" >cc>TechnoFantasy(www.applevb.com) ,解决如下:

Public Const WM_USER = &H400
Public Const EM_SETTARGETDEVICE = (WM_USER + 72)

Public Declare Function GetDC Lib "user32" (ByVal hWnd As Long) As Long
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
  (ByVal hWnd As Long, _
   ByVal wMsg As Long, _
   ByVal wParam As Long, _
   lParam As Any) As Long


Public Sub AutoSwitchLine(ByRef RichText As Long, ByVal bSwitch As Boolean)
    If bSwitch Then
        '设置 RichTextBox 自动换行
        Call SendMessage(RichText.hWnd, EM_SETTARGETDEVICE, _
        GetDC(RichText.hWnd), RichText.Width / 15)
        If RichText.RightMargin = 0 Then
            RichText.RightMargin = 1
        Else
            RichText.RightMargin = 0
        End If
    Else
        '设置 RichTextBox 不自动换行
        Call SendMessage(RichText.hWnd, EM_SETTARGETDEVICE, 0, 1)
    End If
End Sub

原文转自:http://www.ltesting.net