テキストボックスの文字を消させない

解決


楠田街は東の方です。  2004-02-12 10:27:06  No: 81967  IP: [192.*.*.*]

Outlookで本文が表示されている部分の用に部分選択やコピーができるが
本文自体をいじれないような設定を行いのたいのですが、またEnableと
Visibleを使用せずに実装できるのでしょうか?お教えください。

編集 削除
VB歴2年  2004-02-12 10:52:27  No: 81968  IP: [192.*.*.*]

EnableとlokedプロパティをTrueにすれば出来ましたが、Enable使わない方法はわかりません、、、。

両方Trueにするとなぜかいい動きします。
なんでかはわかりません。(TT)

編集 削除
nanashi  2004-02-12 11:05:25  No: 81969  IP: [192.*.*.*]

> EnableとVisibleを使用せずに実装できるのでしょうか?

使わないって、どういう意味なんスかね?
私は以下のようにして実装しています。

1.EnabledとLockedをTrueにします。
2.テキストボックスのChangeイベントでテキストボックスをアンドゥします。

以上。
ちなみにアンドゥはだいたい↓こんな感じ。

'SendMessage
Private Declare Function SendMessage _
    Lib "user32.dll" Alias "SendMessageA" _
    (ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, lParam As Any) _
        As Long

Private Const WM_UNDO As Long = &H304&  'アンドゥ
Private bNowInput As Boolean            'プログラム内から表示データを変えたい時Trueにする。

Private Sub Text1_Change()
    Static bChk As Boolean
    
    If bNowInput Or bChk Then Exit Sub
    
    bChk = True
    'アンドゥ
    Call SendMessage(Text1.hWnd, WM_UNDO, 0&, ByVal 0&)
    bChk = False
End Sub

編集 削除
楠田街は東の方です。  2004-02-12 16:36:33  No: 81970  IP: [192.*.*.*]

ありがとうございました。
大変参考になりました。

編集 削除