ページ 1 / 1
システムメニューの閉じるボタンを消せないか?
Posted: 2009年4月06日(月) 21:25
by toshiyori
AB4.24を使用しています
RADツールを使って フォームを作りました。
その場合 閉じるボタンを消す方法が見つかりません
システムメニューを 消すように 設定はできますが
それでは 最小化ボタンも 消えます
理由は 終了時に 作業をさせたいためです
コマンドボタンをで 閉じれば それが可能ですが
「x」ボタンで 閉じられた時に 対応できないためです。
よろしくお願いします
終了時に処理をするには
Posted: 2009年4月06日(月) 21:44
by 三毛CAT
ボタンを消す方法はわかりませんが、
QueryCloseイベントを捕まえると×ボタンが押された時に作業ができます。
また、その時にcancelをTRUEにするとウィンドウの破棄を防ぐことができます。
これで使えたらどうぞ。
システムメニューの閉じるボタンを消せないか?2
Posted: 2009年4月06日(月) 22:33
by toshiyori
ありがとう ございます
その方法もあるんですネ
試してみると 「x」で 閉じるのは うまく行きましたが
SendMessage(hMainWnd,WM_CLOSE,0,0)を使用して
閉じている コマンドボタンの部分で 2度動作してします
なにか 誤ってるのでしょうか?
Posted: 2009年4月07日(火) 00:05
by konisi
終了時に動作するのなら、PostQuitMessage関数が使えるかもしれません。
あるいはExitProcessとか。
間違ってたらごめんなさい
Posted: 2009年4月07日(火) 07:11
by 三毛CAT
WM_CLOSEは×ボタンを押したことにするため、
処理→SendMessage→QuaryCloseで処理となっていると二度動作すると思います。
システムメニューの閉じるボタンを消せないか?3
Posted: 2009年4月07日(火) 19:17
by toshiyori
> 終了時に動作するのなら、PostQuitMessage関数が使えるかもしれません。
> あるいはExitProcessとか。
ありがとうございます
どちらでも うまくいきました。
SendMessage(hMainWnd,WM_CLOSE,0,0)で 閉じていたので
2度動作していたようです
丁寧な回答で 助かりました
三毛CATさまも ありがとうございます
QuaryCloseは 一度だけ使用していました。