投稿日 | : 2007/07/19(Thu) 17:34 |
投稿者 | : R.S |
Eメール | : |
URL | : |
タイトル | : Re^2: SendMessageのEM_FMTLINESについて |
> 事象を再現できる最小のコードでも投稿して頂くと何方か試して頂けるかとは
> 思うのですが。
失礼しました。サンプルコードを記入致します。
フォームに以下の部品を貼り付けて下さい。
テキストボックス「Text1」
コマンドボタン「Command1」
こちらの環境ですと、フォームのスケールモードをTwipとし、Text1の幅を1426、
高さを765とし、テキストボックスに「abcdefghijklmnopqrstuvwxyzabcde」と打ち
込みコマンドボタンを押すとソフト改行が挿入されません。文字列はコピペだと
挿入に成功します。
知識不足で申し訳ありませんが、よろしくお願いします。
------以下ソース-------
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 Const EM_FMTLINES = &HC8 'ソフト改行文字を設定/削除する定数
Private Sub Command1_Click()
Dim str As String
'ソフト改行文字を付加
Call SendMessage(Text1.hwnd, EM_FMTLINES, 1&, ByVal 0&)
str = Text1.Text
If InStr(str, vbCr & vbCr & vbLf) = 0 Then
MsgBox "ソフト改行は含まれていません"
Else
MsgBox "ソフト改行挿入成功"
End If
End Sub