![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
すみませんが教えてください。
これまで左クリックで画面に文字を表示するときには、何も考えずCxxxViewクラスにWM_LBUTTONDOWNをかいていました。ところがCMainFrameクラスにもちゃんとWN_LBUTTONDOWNが用意されているではないですか。
先ほど教えていただいたばかりの左クリックにてウインドウサイズ変更ができると思い以下のようにしましたが、何も起きませんでした。
どうすれば実現できるのでしょうか?
CMainFrameクラスのWN_LBUTTONDOWNはどのような時に使うのですか?
void CMainFrame::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: この位置にメッセージ ハンドラ用のコードを追加するかまたはデフォルトの処理を呼び出してください
AfxGetMainWnd()->SetWindowPos(NULL,100,200,300,400,SWP_SHOWWINDOW);
CFrameWnd::OnLButtonDown(nFlags, point);
}
No.1ベストアンサー
- 回答日時:
CMainFrameで捕らえられるメッセージはCMainFrameの物だけで、
CMainFrame内にOnLButtonDownを作っても、ViewのWM_LBUTTONDOWNを捕らえる事が出来ないので、何も起きないということになります。
CMainFrameでViewのWM_LBUTTONDOWNを処理したいなら、WM_PARENTNOTIFYを捕まえるのが良いと思います。(自信無しですが)
>CMainFrameクラスのWN_LBUTTONDOWNはどのような時に使うのですか?
MainFrame上には、色々な子ウィンドウが覆っていますが、これらの隙間(純粋なCMainFrame上の領域)をクリックすれば、WN_LBUTTONDOWNが送られOnLButtonDownが処理されると言う事になります。
(最初の質問で、クライアント領域のサイズが変更できたようですが、その時に空いたスペースをクリックするとWN_LBUTTONDOWNが送られているはずです)
ちなみに、AfxGetMainWnd()は、CMainFrameのポインタを取得する為に使ったので、CMainFrame上で使う場合は不必要です。
何度も回答有難うございます。
******
CMainFrameで捕らえられるメッセージはCMainFrameの物だけで、
>CMainFrame内にOnLButtonDownを作っても、ViewのWM_LBUTTONDOWNを捕らえる事が出来ないので、何も起きないということになります。
CMainFrameでViewのWM_LBUTTONDOWNを処理したいなら、WM_PARENTNOTIFYを捕まえるのが良いと思います。(自信無しですが)
**********
てっきりタイトルバーをクリックすれば動くと思っていました。
*********
CMainFrameクラスのWN_LBUTTONDOWNはどのような時に使うのですか?
MainFrame上には、色々な子ウィンドウが覆っていますが、これらの隙間(純粋なCMainFrame上の領域)をクリックすれば、WN_LBUTTONDOWNが送られOnLButtonDownが処理されると言う事になります。
(最初の質問で、クライアント領域のサイズが変更できたようですが、その時に空いたスペースをクリックするとWN_LBUTTONDOWNが送られているはずです)
**********
確かに空いたスペースをクリックすると動きました。
**********
ちなみに、AfxGetMainWnd()は、CMainFrameのポインタを取得する為に使ったので、CMainFrame上で使う場合は不必要です。
********
確認できました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- その他(プログラミング・Web制作) pythonで、tkinterとpillowの組み合わせ 2 2022/08/16 17:42
- Excel(エクセル) 【エクセルマクロ】既に開いているIEの、サイズや表示位置を変更するには 4 2022/12/01 22:57
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/04/21 13:46
- 画像編集・動画編集・音楽編集 gomcamの起動にブロックがかかる 1 2023/07/28 23:34
- Windows 10 Microsoftアカウントでログインできなくなった場合の対処を教えてください 1 2023/03/03 15:45
- Chrome(クローム) Chromeでgooglemap検索等結果が他国になってしまう 1 2022/10/05 12:18
- C言語・C++・C# 必ずyou bet と表示されます 2 2023/07/28 22:19
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
メッセージハンドラ
C言語・C++・C#
-
画面を強制的に再描画させる方法
C言語・C++・C#
-
-
4
メニューをグレー表示でなく非表示にするには?
C言語・C++・C#
-
5
VC++ MFC CFrameWndって・・・
C言語・C++・C#
-
6
エディットボックスの入力制限について
C言語・C++・C#
-
7
Debug Assertion Failed?
C言語・C++・C#
-
8
deleteで開放するとエラーになる原因がわからない
C言語・C++・C#
-
9
VC++から引数付きexeファイルの実行
C言語・C++・C#
-
10
CString から LPCTSTRの型に変換
C言語・C++・C#
-
11
charからLPTSTRへの変換方法
C言語・C++・C#
-
12
WaitForSingleObjectの使い方について
C言語・C++・C#
-
13
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
14
リストコントロールの列幅を固定にする
C言語・C++・C#
-
15
OnInitDialog()の関数の組み込み方
C言語・C++・C#
-
16
ダイアログ内コントロールの位置取得について
C言語・C++・C#
-
17
既定のコンストラクタがありません。というエラーについて
C言語・C++・C#
-
18
CString型 全角半角を意識せずに「1文字」ずつ取り出す
C言語・C++・C#
-
19
ビジュアルC++でボタンの有効/無効
C言語・C++・C#
-
20
_tcscpy_s(wcscpy_s)の第二引数って
C言語・C++・C#
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
FriendとPublicの違い。。。
-
ダイアログ表示時にチェックボ...
-
既定のコンストラクタがない?
-
エディットコントロールのイベ...
-
クラスのアドレスを引数として...
-
(UWSC) 「#32770」の意味わかり...
-
エディットコントロールでEnter...
-
DataGridViewのセルに斜線を引...
-
CMainFrameクラスの使い方
-
C++のclassを、ウインドウプロ...
-
【ASP.NET】 独自で作成したク...
-
MFCのCListCtrlでスクロールを検出
-
Delphi2007のCheckBox.Font.Col...
-
正規表現 [^/]+ の意味を教えて
-
【C++】vectorについて
-
DLLからEXEのクラスを呼び出す...
-
WindowsAPIのリストビューの...
-
【C++】相互参照
-
C#で通常のbuttonコントロール...
-
MFCでSDIからダイアログの呼び出し
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FriendとPublicの違い。。。
-
既定のコンストラクタがない?
-
(UWSC) 「#32770」の意味わかり...
-
ダイアログ表示時にチェックボ...
-
クラスのアドレスを引数として...
-
C++ protectedにアクセス不可
-
【ASP.NET】 独自で作成したク...
-
MFCアプリのコマンドラインでパ...
-
ダイアログクラスのコントロー...
-
エディットコントロールでEnter...
-
このコンパイルエラーの意味に...
-
CMainFrameクラスの使い方
-
イベントにAddHandlerされてい...
-
MFC モードレスDlgについて
-
MFCのCListCtrlでスクロールを検出
-
privateなメンバ関数をテストす...
-
[MFC] CWnd::MessageBoxの警告...
-
継承を重ねた場合のコストはど...
-
DataGridViewのセルに斜線を引...
-
ボタンのオーナードローについて
おすすめ情報