掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MSChartオブジェクトから他のオブジェクトへフォーカスが移動されないのは? (ID:142882)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
【開発環境】 OS :WindowsXP(SP3) 言語:VB6.0(SP6) フォームAに貼り付けたMSチャートコントロールのグラフ(chA)を 右クリックしてポップアップメニューを表示し、 別フォームBをLoadしてchAグラフを拡大したグラフを表示するプログラムを作成しています。 問題点は、フォームBを終了した後フォームAがアクティブになった直後、 フォームA内のコマンドボタン(cmdX)を1度押下しても反応しないというものです。 コマンドボタンに限らず、テキストボックスをクリックしても反応しないのです。 2度目の押下では反応します。 手順としては以下です。 (1)フォームAのchAのMouseDownイベント内で右クリックであれば拡大するメニューを表示 (2)メニューを選択し、フォームBをvbModalでShow (3)フォームBを表示後、ボタン操作でUnload (4)フォームAのコマンドボタンを押下しても反応せず chAのMouseDownイベント内では、PopupMenuメソッド終了後に フォームAのコマンドボタンに対してSetFocusしています。 ソースを表記します。 ---------------------------------------------------------------------- '右クリック時に拡大メニューを表示 Private Sub chA_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = vbRightButton Then '拡大メニューのポップアップ frmA.PopupMenu mnuKakudai, vbPopupMenuRightButton End If End Sub Private Sub chA_GotFocus() 'コマンドボタンにフォーカスを移す cmdX.SetFocus End Sub '右クリックメニュー選択時 Private Sub mnuKakudai_Click() frmB.Show vbModal End Sub ---------------------------------------------------------------------- MouseDownイベントを、MSChartではなく、テキストボックスにした場合ですと、 正常にSetFocusができております。 もしかしたら、MSChartの不具合でしょうか? お心あたりの方、回避方法などご教授よろしくお願いします。 ※ちなみに、本質問は「VBラウンジ」という掲示板にも投稿しております。 ※「VBラウンジ」で回答が得られていないため、 ※一部記載を変更して、本掲示板に投稿させて頂きました。 ※マルチポストに該当してしまうかと思いますが、ご容赦の程お願いします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.