HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
1101
栗帽子sendmsgでウィンドウ最大化する際に非表示が解除される3未解決


栗帽子

リンク

2009/11/1(Sun) 11:16:02|NO.28628

ウィンドウを非表示状態のまま最大化したいのですが、sendmsgでSC_MAXIMIZEを送ると勝手に非表示状態が解除されてしまいます。
非表示状態のままウィンドウ最大化は出来ないでしょうか??よろしくお願いします。

#define WM_SYSCOMMAND $00000112 #define SC_MAXIMIZE $0000F030 screen 0,ginfo(20),ginfo(21),2,,,640,480 wait 300 sendmsg hwnd,WM_SYSCOMMAND,SC_MAXIMIZE,0 ;ウィンドウを最大化(非表示が解除されてしまう) wait 300 end



この記事に返信する


窓口

リンク

2009/11/1(Sun) 17:57:37|NO.28633

求めているものと多少違うかもしれませんが。
こんなのはどうでしょうか?


#include "user32.as" #define WM_SYSCOMMAND $00000112 #define SC_MAXIMIZE $0000F030 #define SM_CXFULLSCREEN $00000010 #define SM_CYFULLSCREEN $00000011 #define GWL_STYLE $FFFFFFF0 #define WS_MAXIMIZEBOX $00010000 #define WS_SIZEBOX $00040000 #define MF_GRAYED $00000001 #define MF_DISABLED $00000002 screen 0,ginfo(20),ginfo(21),2 ;最大化ボタンを有効にする : これが無いと最大化した際にウインドウを移動する事が出来てしまう。 GetWindowLong hwnd, GWL_STYLE SetWindowLong hwnd, GWL_STYLE , stat | WS_MAXIMIZEBOX | WS_SIZEBOX ;最大化された際のクライアントエリアのサイズ GetSystemMetrics SM_CXFULLSCREEN : cx = stat GetSystemMetrics SM_CYFULLSCREEN : cy = stat wait 300 width cx,cy ; 最大化の代わり。 ;ウインドウ表示 dialog "表示されます。" sendmsg hwnd , WM_SYSCOMMAND , SC_MAXIMIZE stop



栗帽子

リンク

2009/11/1(Sun) 20:35:48|NO.28635

窓口さん回答ありがとうございます。m(。_。)m
その方法ですと、ウィンドウを元のサイズに戻したときに、最大化サイズのままになってしまいますよね…?
プログラムの組み方次第でそのあたりをうまく隠すことも出来そうですが、ソースが複雑になりそうで少し微妙な気がします。
最初に書いたとおり、非表示状態のまま最大化は難しいでしょうか?引き続き回答お待ちしています。



atom

リンク

2009/11/1(Sun) 23:15:18|NO.28641

最大ボタンと最小化ボタンが逆になってしまいますが一応元に戻ります。
MINMAXINFO構造体が間違っているような・・・

#include "user32.as" screen 0,ginfo(20),ginfo(21),2,,,640,480 //最大化ボタン付加 GetWindowLong hWnd, -16 SetWindowLong hWnd, -16, stat|0x10000 //最大化前のサイズ/ポジションを保存 nx=ginfo(12) :ny=ginfo(13) px=ginfo(4) :py=ginfo(5) //最大化 MoveWindow hwnd,0,0,ginfo(20),ginfo(21),0 oncmd gosub *minmax ,0x24 //WM_GETMINMAXINFO wait 300 //表示 gsel 0,1 stop *minmax dim MINMAXINFO,5 dupptr MINMAXINFO,lparam,4*2*5,4 minmaxinfo(2) = nx minmaxinfo(3) = ny minmaxinfo(4) = px minmaxinfo(5) = py return 0



ONION software Copyright 1997-2023(c) All rights reserved.