• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB6で同一のコンボックスを二つのフォームで使用)

VB6で同一のコンボックスを二つのフォームで使用

このQ&Aのポイント
  • VB6で同一のコンボックスを二つのフォームで使用したい場合、フォーム1のコンボックスで選択した項目と同じ項目をフォーム2のコンボックスに表示する方法や、フォーム2のコンボックスで選択した項目と同じ項目をフォーム1のコンボックスに表示する方法があります。しかし、現在の実装ではそれぞれのフォームで別々に定義されたコンボックスを使用しており、ListIndexをセットする際に無限ループが発生しています。
  • フォーム1のコンボックスでリストから項目を選択すると、その選択した項目をフォーム2のコンボックスに表示するためには、まずフォーム1のコンボックスのSelectedIndexを取得し、それをフォーム2のコンボックスのSelectedIndexにセットする必要があります。同様に、フォーム2のコンボックスで選択した項目をフォーム1のコンボックスに表示する場合も、フォーム2のコンボックスのSelectedIndexを取得し、それをフォーム1のコンボックスのSelectedIndexにセットします。
  • また、無限ループを回避するためには、ListIndexをセットする前にイベントの発火を一時的に無効化する必要があります。具体的には、Combo1_Clickイベントでイベントの発火を無効化し、Combo1のListIndexをセットした後にイベントの発火を再度有効化します。これにより、無限ループに陥ることがなくなります。

質問者が選んだベストアンサー

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.2

誤字があるけど、別質問にイメージ書いたよ

参考URL:
http://okwave.jp/qa/q8216841.html
usami33
質問者

お礼

何度も回答をいただきありがとうございます。

その他の回答 (1)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

Public変数を定義して、他フォームからの操作と判断できたら clickイベントを抜けるようにするとか。

usami33
質問者

お礼

細かいご説明とソースまで書いていただきありがとうございました。