- ベストアンサー
Ctrl+F4を押してもフォームが閉じないのですが
とあるmdbファイルで、Ctrl+F4を押してもフォームが閉じないのですが どうやってロックしてるのでしょうか? そのロックを解除する方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
フォームの「ポップアップ」プロパティが「はい」の場合、 あるいは 「フォームを開く」 アクションで 「ウィンドウモード」に「ダイアログ」を指定している場合など アクティブフォームでないときには Ctrl+F4 は 効かないようですね。
その他の回答 (1)
- DexMachina
- ベストアンサー率73% (1287/1744)
> Ctrl+F4を押してもフォームが閉じない フォームやアプリケーションのウィンドウを閉じるショートカットは「Alt+F4」のはずなので、 まずはその点をご確認下さい(汗) Access上で特定のキー操作を無効にする方法は幾つかありますが、今回ご質問の 「Alt+F4」の場合は、当該フォームの『キークリック時』イベントで、(特定の)キー入力 を無効にする方法のみが対応可能な方法となります。 また、キー操作を無効にする以外の方法として、設計者が設置したコマンドボタン(等) 以外の方法で閉じた場合に、フォームの『読み込み解除時』イベントのCancel引数を 使用して、閉じる処理を無効化する、というものも考えられます。 とりあえず、前者の方法の場合は 1)当該フォームのプロパティシートで、『イベント』タブの最下方にある『キーボード イベントの取得』を「はい」に設定 2)当該フォームの『キークリック時』(KeyDown)イベントで、「Alt+F4」の場合に、 KeyCode引数とShift引数の少なくとも一方を「0」に設定 (普通は両方を「0」にするはず) という手順が必要となるので、とりあえず「1」の逆(=同設定値を「いいえ」に設定)を 行えば、ロックを解除できます。 後者の場合は、『読み込み解除時』(Unload)イベントのCancel引数を「True」(-1) に設定しているコードが記述されているはずなので、そこをコメント化するなどしてやれば Ok、となります。 但し、どちらの方法も、少なくとも当該フォームのプロパティシートを表示したり、コード を表示したり、といったことができて初めて対応が可能となるので(・・・無理やり設定を 行う方法は、セキュリティ上の観点から、ここでは説明しません)、それらが不可能な 場合は、残念ながらロックは解除できない、ということになるかと思います(汗)
お礼
あれれ 「Alt+F4」はアプリケーションを閉じるショートカットキーだと思ってました。 一番最初に立ち上がるフォームのキークリックイベントを見ましたが何も入っていませんでした。 いろんな方法でロックをかけられるのですね。
お礼
ポップアップがはいになってました! これが原因だったようですね。 無事閉じれるようになりました。