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

王朝vb·作者佚名  2006-01-08
宽屏版  字体: |||超大  

近日研究文本控件和字符串,研究得头混脑胀,问题真是太多了。

这只是其中的一个问题,答案来自问专家网站和CSDN的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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有