たかせ様
ご返信有難うございます。
コード:
OldEditProc = GetWindowLong(GetDlgItem(hMainWnd,EditBox1),GWL_WNDPROC)
を行ってみましたが変わりありませんでした。
そしてふと思ったのですが、
k2様の「行番号付きエディットボックス」をEditBoxに適応しているのですが、
もしかしたらこれが原因なのでしょうか…?
とりあえず、変わってはいませんがサブクラス化したコールバック関数はこのようになっています
コード:
'EditBox1のサブクラス コールバック関数
Dim OldEditProc As WNDPROC
Function Edit1WndProc(hWnd As HWND, dwMsg As DWord, wParam As WPARAM, lParam As LPARAM) As DWord
If dwMsg = WM_KEYDOWN Then
If (GetAsyncKeyState(VK_CONTROL) And &H8000) Then
If wParam = 65 Then
'Ctrl+Aが押されたら、全て選択する
MainWnd_IDM_SELECTALL_MenuClick()
Else If wParam = 83 Then
'Ctrl+Sが押されたら、保存する
MainWnd_IDM_SAVE_MenuClick()
Else If wParam = 79 Then
'Ctrl+Oが押されたら、ファイルを開く
MainWnd_IDM_OPEN_MenuClick()
Else If wParam = 191 Then
'Ctrl+/が押されたら、文字数カウント
MainWnd_IDM_TEXTCOUNT_MenuClick()
Else If wParam = 70 Then
'Ctrl+Fが押されたら、検索置換
MainWnd_IDM_TEXTSEARCH_MenuClick()
Else If wParam = 188 Then
'Ctrl+,が押されたら、環境設定
MainWnd_IDM_SETTING_MenuClick()
End If
End If
Exit Function
debug
End If
Edit1WndProc=CallWindowProc(OldEditProc,hWnd,dwMsg,wParam,lParam)
End Function
またクリエイトイベントで
コード:
'EditBoxのサブクラス化
OldEditProc = GetWindowLong(GetDlgItem(hMainWnd,EditBox1),GWL_WNDPROC)
SetWindowLong(GetDlgItem(hMainWnd,EditBox1),GWL_WNDPROC,AddressOf(Edit1WndProc) As Long)
としてみました。
よろしくお願いいたします。