過去の桐井戸端BBS (桐ver.8)
7579 イベント処理で2つのサブフォームの切り替え くるみ 井上 2000/09/11-15:16
イベント処理についてお尋ねします。
メイン・サブフォームでサブフォームを2つ作り、ボタンでこのサブフォームを切り換えるイベント処理は
どのようにすればよいのでしょうか。
以前、悲しげさんに同じ様な処理を教えていただいたのですが、イベントの記述が今一つ理解できず、
またまた質問させていただきます。

7590 2つのサブフォームの切り替え 佐田 守弘 2000/09/11-23:42
記事番号7579へのコメント
くるみ 井上さん
以前のかなしげさんからのコメントを憶えていないので、場合によっては新しい方法になりますが、
1つの方法を提案させて頂きます。
その前に確認なのですが、メインフォームとサブフォームはどの様に配置されているのでしょうか。
その形として

@「品」の字形
口の部分が1つのフォームだとみなして下さい。つまり、メインフォームの下にサブ
フォームが2つ並んでいる形です。

A「目」の字形
メインフォームの下にサブフォームが縦に並んでいる形です。

B「日」の字形
メインフォームの下に、サブフォームが2つありますが、いずれも同じ場所に表示する形です。

以上のうちで、「品」の字と「目」の字は、2つのサブフォームが常に表示されているので、
特にボタンを使って切り換える必要はないと思います。
単にそこでマウスクリックするだけです。

問題はBの「日」の字形ですね。
同じ場所に同じサイズのフォームを切り換えて表示したい場合がこの形です。
その1つの方法として次の様な方法はいかがでしょうか。
サブフォームは同じ場所に重ねて2つ設定します。
そして、使用頻度が高いサブフォームAを下(オブジェクトの順序で背面)に設けます。
もう1つのサブフォームBをこの上に重なるようにして設けますが、このサブフォームは非表示にしておきます。
この様にすると、通常はサブフォームAのみが画面に表示されます。
そして、サブフォームBに切り換えるときには、「オブジェクト属性変更」コマンドで
これを表示に変更し、「メソッド呼び出し フォーカス設定」コマンドで、フォーカスをこのフォームに移動します。
そして、サブフォームAに戻るには、Bを非表示に変えて、フォーカスをAに写します。

以上の方法で「日」の字形に配置したメイン&サブフォームのサブフォームの切替ができるはずです。

佐田守弘(KS-00119)
7592 Re:2つのサブフォームの切り替え くるみ 井上 2000/09/12-00:44
記事番号7590へのコメント
佐田さんありがとうございました。
何とかサブフォームの切り替えができました。
やっとはじめてうまく動きました。
イベント処理は使いこなせるといろんなことができそうですが、
ついつい何でも一括処理ではと考えてしまいます。
今後ともよろしくお願い致します。
くるみ 井上

戻る