tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: 右クリックのメニュー非表示について
投稿日: 2005/01/26(Wed) 12:27
投稿者花ちゃん
下記でどうですか?

'貼り付け防止処理をしたカスタムテキストボックスを作成
Public Class cmTextBox
    'テキストボックスを継承
    Inherits System.Windows.Forms.TextBox

---- Windows フォーム デザイナで生成されたコード省略 ----
  
    'WndProc のオーバーライド
    Protected Overrides Sub WndProc(ByRef m As Message)
        Const WM_CUT As Integer = &H300         'カット(P840)
        Const WM_COPY As Integer = &H301        'コピー(P837)
        Const WM_PASTE As Integer = &H302       'ペースト(P876)
        Const WM_CONTEXTMENU As Integer = &H7B  'ポップアップメニュー
        Const WM_RBUTTONUP As Integer = &H205   '右ボタンアップ    
        Select Case m.Msg

        Case WM_CONTEXTMENU, WM_CUT, WM_PASTE, WM_RBUTTONUP
            m.Result = IntPtr.Zero
            Exit Sub
        End Select

        'オブジェクト変数と同じように動作する
        MyBase.WndProc(m)
    End Sub
End Class

'1.メニューのユーザコントロールの追加でファイル名をcmTextBox.vbにして追加する。
'2.作成した、cmTextBox.vb に上記のコードを記入してビルドする。
'3.ツールボックス上(マイユーザコントロールの欄)にcmTextBox コントロールが
'    出来ているのでForm1に貼り付ける

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。