将RichTextBox设置为自动换行或非自动换行 (转)

本文介绍了一种通过VB代码实现RichTextBox控件自动换行与非自动换行的方法。利用Windows消息和API函数,可以灵活地切换文本框的换行模式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将RichTextBox设置为自动换行或非自动换行 (转)[@more@]

  近日研究文本控件和字符串,研究得头混脑胀,问题真是太多了。
  这只是其中的一个问题,答案来自问专家网站和优快云的.NET/Message_Board/Send.ASP?sendto=TechnoFantasy" target=_blank>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


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-993387/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10752043/viewspace-993387/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值