dポイントプレゼントキャンペーン実施中!

アクセスのフォームサイズ変更がうまくいかず困っています。

まずフォームを3つ(メニューA, frmB, frmC)作成しました。メニューAからは、frmBとfrmCを開くことが出来ます。また、frmBからはfrmCを開くことができます。

ここで、frmBのサイズはform_OpenでDoCmd.Maximizeを使って最大表示しています。frmCのサイズは同じくform_OpenでDoCmd.Movesize 1500, 300, 11500, 8000としています。

メニューAからは、frmB, frmCともに正しいサイズ(frmBは最大、frmCは指定のサイズ)で開かれます。frmBからfrmCを開くと最大化されて表示されてしまいます。

なお、frmBのform_Open内の最大化のコマンドをけずるとfrmBからもfrmCを正しいサイズでfrmCを開くことが出来ます。frmBのサイズがそのままfrmCに継続されているような気がするのですが、なぜfrmCのform_Openを読んでくれないのでしょうか。デバッグしてみましたがもちろん、frmCのform_Openも読んでいます。

frmBを最大化したまたfrmCを正しいサイズで開くことは出来ないでしょうか。
どなたかアドバイスをお願い致します。

A 回答 (5件)

 Docmd.Maximizeは、一度実行されると、全てのフォーム


に対して有効になってしまいます。
 最大化したくないフォームのみ、ポップアップ設定して
しまえば?
 ポップアップを有効にしたフォームについてはサイズが
固定されてしまい、最大化できなかったはず。
    • good
    • 0
この回答へのお礼

なるほど、Maximizeは全てのフォームに適用されてしまうのですね。ポップアップを試しましたが、なぜかコマンドボタンを使用するとエラーが出てしまいます。

お礼日時:2005/06/17 10:29

frmBからfrmCを開くイベントに下記の記述をしてください。



DoCmd.Restore
Docmd.OpenForm "frmC"
    • good
    • 0
この回答へのお礼

上記のコマンドを使って、各コマンドボタンにサイズを指定するコマンドを入れたらうまくいきました。ありがとうございます。

お礼日時:2005/06/17 10:30

frmCを開く時に


DoCmd.OpenForm "frmC", acNormal, "", "", , acDialog
で開けばサイズを固定して開けます。
ただacDialogで開くのでポップアップになり常に前面に表示されてしまいますが。
    • good
    • 0

アクセスは長いこといじっていませんが(^^;



>frmBのform_Open内の最大化のコマンドをけずるとfrmBからもfrmCを正しいサイズでfrmCを開くことが出来ます

ということなので、frmBからfrmCを開く直前に、自分自身のサイズを変えるとどうなるのでしょうか?
    • good
    • 0

アクセスは詳しく無いですが、、、



Excelはありますよね?
複数ブックを開いて、最大化をした時、もう一方のブックがどうなっているか見て下さい。

MDI形式の子ウィンドウが全て最大化されるのは、Windowsの仕様なのでは?と思ってます。
確証は無いですけど、、、
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す