- 締切済み
accessの次のformをpopupformのようにあけるには
accessユーザーです formにボタンとかで次のformをあける場合に現在は次のform_open時に Private Sub Form_Open(Cancel As Integer) DoCmd.Restore End Sub DoCmd.Restoreで表示しています(そのままあけると最大化されてしまって、やりたいことは小さくあけたいのです)がバックのformも少し小さくなってしまいます あけるformのプロパティーでpopupを「はい」にしてあけるとイメージどうりにバックのformは変化がありません ところがそのあけたformにまたボタンをつけて別のformをあけようとすれば当然にpopupformですのでどうしても最前面にいてしまいます popupformでなくてバックのformを変化させない方法はないでしょうか
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- nicotinism
- ベストアンサー率70% (1019/1452)
> 新規作成で簡単なformを作成して開くであけると最大化でひらきますよね 最大化にはならないと思いますよ。 推測ですが、フォームの中のラインとか詳細セクションの中で 大きい値のものが有るのではないでしょうか?
- nicotinism
- ベストアンサー率70% (1019/1452)
メニューからツール→起動時の設定でデータベースウィンドウの表示の チェックを外しては如何ですか? 次の起動時にはデータベースウィンドウは表示されなくなります。 (表示したいときは、F11 キーで)
お礼
ありがとうございました
補足
ずばりそのとうりにチェックをはずしてデータベースwindowを表示させないでやってみましたがうまくいきません 基本的なことですが新規作成で簡単なformを作成して開くであけると最大化でひらきますよね、これを指定のおおきさにするにはどうしてもDoCmd.Restoreであけないと小さくならないとおもうのですが よろしくおねがいします
- nicotinism
- ベストアンサー率70% (1019/1452)
> バックのformも少し小さくなってしまいます このような状況になった事はありませんが、フォームを開く際に 位置とサイズを指定しています Private Sub Form_Open(Cancel As Integer) DoCmd.MoveSize Right:=60, down:=100, Width:=12630, Height:=12100 End Sub フォームをちょうど良い大きさにしてからイミディエイトウィンドウで ?forms!フォーム名.windowwidth ?forms!フォーム名.windowheight で大きさを取得して上記のMoveSizeの値に入れています。
補足
すみません、一番最初にメニュー用フォームビルダで作成したメニューを使っています 原因はメニューformでDoCmd.Restoreを使用しているため 次のフォームをあけるときdocmd.Maximizeであけています なぜかというとメニューのときに引き継いだrestoreの状態で最大formに調整しても一番外側の枠にはaccessのform、つまりデータベースwindowが表示されていてその中に作成したformがあるため見栄えが悪くMaximizeであけるとそのデータベースwindowがなくなるためいいのですが最大であけるため次のformはDoCmd.MoveSize を使用しても動作しません、質問を言い換えるとデータベースwindowを消す方法があれば最大化Maximizeのコマンドを使用しなくてもすむので次のformサイズもおもうようにできるのですが
- tsukasa-12r
- ベストアンサー率65% (358/549)
SetWindowPos() API を使用すれば、なんとななるような気がします。 SetWindowPos で検索してみてください。 どこかに、VB や Access、Excel で使用できるサンプルもあると思います。
お礼
基本的なことができていないようです、もう少し調べてみます ありがとうございました
補足
原因はMaximizeだとおもいます、一番外側のaccessのデータベースwindowを消す方法があれば最大化Maximizeのコマンドを使用しなくてもすむので次のformサイズもおもうようにできるのですが SetWindowPos をこれから検索してみようとおもいます
お礼
長いことaccessはやっているのですが基本的なことができていないのかもしれません ご指摘のようにフォームの中のラインとか詳細セクションをしらべてみます ありがとうございました