• 締切済み

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を変化させない方法はないでしょうか

みんなの回答

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.4

> 新規作成で簡単なformを作成して開くであけると最大化でひらきますよね 最大化にはならないと思いますよ。 推測ですが、フォームの中のラインとか詳細セクションの中で 大きい値のものが有るのではないでしょうか?

hiyotom
質問者

お礼

長いことaccessはやっているのですが基本的なことができていないのかもしれません ご指摘のようにフォームの中のラインとか詳細セクションをしらべてみます ありがとうございました

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.3

メニューからツール→起動時の設定でデータベースウィンドウの表示の チェックを外しては如何ですか? 次の起動時にはデータベースウィンドウは表示されなくなります。 (表示したいときは、F11 キーで)

hiyotom
質問者

お礼

ありがとうございました

hiyotom
質問者

補足

ずばりそのとうりにチェックをはずしてデータベースwindowを表示させないでやってみましたがうまくいきません 基本的なことですが新規作成で簡単なformを作成して開くであけると最大化でひらきますよね、これを指定のおおきさにするにはどうしてもDoCmd.Restoreであけないと小さくならないとおもうのですが よろしくおねがいします

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

> バックの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の値に入れています。

hiyotom
質問者

補足

すみません、一番最初にメニュー用フォームビルダで作成したメニューを使っています 原因はメニューformでDoCmd.Restoreを使用しているため 次のフォームをあけるときdocmd.Maximizeであけています なぜかというとメニューのときに引き継いだrestoreの状態で最大formに調整しても一番外側の枠にはaccessのform、つまりデータベースwindowが表示されていてその中に作成したformがあるため見栄えが悪くMaximizeであけるとそのデータベースwindowがなくなるためいいのですが最大であけるため次のformはDoCmd.MoveSize を使用しても動作しません、質問を言い換えるとデータベースwindowを消す方法があれば最大化Maximizeのコマンドを使用しなくてもすむので次のformサイズもおもうようにできるのですが

回答No.1

SetWindowPos() API を使用すれば、なんとななるような気がします。 SetWindowPos で検索してみてください。 どこかに、VB や Access、Excel で使用できるサンプルもあると思います。

hiyotom
質問者

お礼

基本的なことができていないようです、もう少し調べてみます ありがとうございました

hiyotom
質問者

補足

原因はMaximizeだとおもいます、一番外側のaccessのデータベースwindowを消す方法があれば最大化Maximizeのコマンドを使用しなくてもすむので次のformサイズもおもうようにできるのですが SetWindowPos をこれから検索してみようとおもいます

関連するQ&A