画面の最大化サイズを WM_GETMINMAXINFO 時に制限することはできたのですが、
画面が移動できてしまいます。タイトルバーを右クリックした時にでるメニュー内
は「移動」が選択できないようになってはいるのですが・・・。
最大化されたときに、画面の移動をできなくするには、
どのようにすればいいのでしょうか?
宜しくお願いいたします。
単純にFormのBorderStyle = 0
じゃだめ?
タイトルバーいるなら、Labelにいろつけてごまかすとか・・・
Sayさんアドバイスありがとうございます。
複数の会社で多数の画面を開発するので、
できれば共通BASなどで処理できれば各画面の負担がなくて
いいのでは・・と思っていたのですが、
BorderStyleの設定で逃げたほうが、いいのかもしれませんね。
引き続き何かあれば、ご教授願います。
ウィンドウスタイルを書き換えれば
確かうまくいけたようないけなかったような・・・。
すいません、あまり覚えてません。
とりあえず、SetWindowLong辺りで色々と試してみては?
こころさんアドバイスありがとうございます。
色々調べているのですが、成果が出ません (><)
何かあれば、教えて下さい m(_ _)m
すいません、嘘付いてました。
不可にできたのはサイズ変更でした。
WM_MOVE,WM_MOVINGとかを無効にするだけでは
ダメなんでしょうか?
WM_MOVE,WM_MOVINGとかを無効にする方法ってご存知でしょうか?
私の勘違いかもしれませんが、
WM_MOVE,WM_MOVINGなどのメッセージが取得できた時には
既に画面は移動されていているのではないでしょうか?
WM_MOVE
message is sent after a window has been moved.
WM_MOVING
mmessage is sent to a window that the user is moving. By processing this message, an application can monitor the size and position of the drag rectangle and, if needed, change its size or position.
なんだか無理っぽいですね。
嘘ついてばっかで申し訳ないです。
spyではメッセージがでるのに
サブクラス化してもメッセージがとれないのは
何故なんだろう・・・。
解決策ですがWM_NC系で判定する、ってのは
ダメでしょうか。
移動動作をさせなくしちゃうと。
ツイート | ![]() |