3/4に質問したものと同一内容ですが、解答が付かず、また納期が迫りましたので、困り度を上げて再質問させて頂きます。
WinXP環境下でVB6sp5+Access2002で開発を行っています。
コンボボックスAで条件設定(確定はロストフォーカス/又はクリック)を行い、アクセスmdbから抽出した情報をコンボボックスBのアイテムへ取込んで表示をさせています。共にIntegralHeightはTureです。
複数回実行する時、コンボBの抽出結果リストが前回より少ない(リストの高さが低い)場合、余剰部分が画面上に空白のまま残ってしまう様です。
画面を「最小化」後、「元のサイズに戻す」等行えば消えます。…が、いかにも抜け道臭いので、解消方法を教えてください。
No.2ベストアンサー
- 回答日時:
コンボボックスだから、通常はテキスト入力域の1行と
「下向き黒三角マーク」だけしか表示されていないんですよね?
だから、おっしゃっている「残像」の意味というか、実際の
状況がイマイチ見えないのですが...
コンボボックスに新たな抽出データを取り込んだ後で、
[ComboBox名].Refresh
を実行してみてはどーでしょ??
それでだめなら
[Form名].Refresh
では、どーでしょか?!
フォームに貼り付けたコントロールやらが多いと
ちらつくかもしれませんが...
(見当違いだったらスンマセン)
この回答への補足
回答有難うございます。
残像とはプルダウンしてくるリスト部分の事です。
明細は消え(正しく編集され)るのですが、余分となった部分の表示が残ってしまいます。
次の操作に移る際、項目選択した(正しい)部分は消え、重なっていた部分の表示が再び表示されます。が、余分の部分が消えずフォームや他のオブジェクト上に残ってしまいます。
01殿のアドバイスにも有った[Form名].Refreshを掛けた所、フォーム部分に重なっている所は消えました。が、この方法だけではListBoxと重なる部分については消えない様です。ListBoxにもRefreshを掛けてみた所、残像は一見消えたのですが、FormとListBoxの境界線が欠けました(汗)
とりあえず、これでリリースの方向ですが、この補足で更なる妙案が有りましたら、宜しくお願い致します。
情報の取込み方法をLostFocusにすると、プルダウン実行時に発動して、前情報を表示と同時に情報更新(上書き)が行われる様です。この為、更新後に使わない部分が残像として残ってしまう様です。
(同処理をClickで実行すると再現しない様です)
選択方法を両方併記する事で、事態は解消した様です。
色々なオブジェクトにリフレッシュをかけてみた事がヒントになりました。有難うございました。
No.3
- 回答日時:
>Doイベントのと云う事でDoWhileループの追加を行ってみましたが、特に効果は無い様でした。
あ、そうじゃないんです。DoEvents というステートメントです。ヘルプで DoEvents を見てみてください。
( DoEvents で解消されるという確証はありませんが。)
この回答への補足
丁寧なフォローを有り難うございます。
…確認しました。昨日の検索時に見つけられませんでした(汗)
回答の例と同様の処理なのでリスト作成Loopの前や中にDoEventを追加してみましたが、変化は見られず=解消には到りませんでした。残念です。
chipmoguraさんのお礼に書きましたが、どうやらイベントキックで並列処理になっている事が問題だった様です。
色々ヒントを頂き、有難うございました。
No.1
- 回答日時:
私も以前、同じような症状を見たことがあります。
が、何をどうしたからなのかよくわからないのですが、いつの間にか再現しなくなってました。私が開発していたものは WinXP + VB6 + Oracle OO4O の組み合わせで、
(1) OraDynaset ( ADO や DAO の Recordset のようなもの ) を取得
(2) Loop でコンボボックスのリストをセット
のようにしていたのですが、他の問題があって、(1) と (2) の間に DoEvents を入れたことがありました。
確証はないのですが、DoEvents を入れてから再現しなくなったような気がします。
あと、DoEvents を入れても解消しない場合、今ちょっと思いついたのですが、「最小化→元にサイズに戻す」の代わりに「 Me.Show 」( Me は自フォーム ) はどうでしょうか。Me.Show だけではダメなら、一度 Me.Hide してから .Show するとか。もしこれで解消されるなら「最小化→元に戻す」よりは見た目まだましかなぁ、と。
この回答への補足
回答有難うございます。
Doイベントのと云う事でDoWhileループの追加を行ってみましたが、特に効果は無い様でした。
具体的にどの様なイベントを追加されたか思い出されましたら、お教え願えますでしょうか。
Me.showも単独では効果が無いようです。
Hideの併用は画面のちらつきとカーソル連打が恐いので、遠慮することにしました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBA ドロップボックスで月を選択するとそれ以降のデータが残るようにしたい。 3 2022/12/16 14:53
- Excel(エクセル) 【詳しい方教えて下さい】EXCEL条件に一致する値の複数抽出 9 2022/04/29 10:56
- Excel(エクセル) Excel(エクセル)でフィルター抽出後、非表示の行を計算しないで、合計を算出する方法 【内容】 添 4 2023/01/30 17:17
- HTML・CSS VB.net コンボボックス 2 2022/06/30 20:37
- 邦画 福山雅治 主演映画『真夏の方程式』は安倍晋三銃撃事件をアレンジした作品なのですが、わかりますか? 3 2022/07/09 08:26
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Excel(エクセル) Excelの数式についての質問 1 2022/10/31 15:50
- WordPress(ワードプレス) WordpressでYouTubeの埋め込みができない。 1 2022/10/26 01:08
- Windows 10 再起動後 Pinが使用できず、PC(windows11)にサインインできない 3 2022/08/30 20:53
- Excel(エクセル) エクセルでキーリストからデータを取り出して1枚1枚印刷するには? 11 2022/06/27 09:52
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
3分あったら何をしますか?
カップ麺にお湯を入れて、できるまでの3分間で皆さんは何をしていますか?
-
治せない「クセ」を教えてください
なくて七癖という言葉どおり、人によっていろいろなクセがありますよね。 あなたには治せないクセがありますか?
-
前回の年越しの瞬間、何してた?
いよいよ2025年がやってきますね。 年越しのスタイルは人それぞれ。 2024年を迎える瞬間は何をしていましたか?
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
コンボボックス内の文字サイズ変更
Excel(エクセル)
-
マクロ実行後に別シートの残像が残り、オブジェクトが見えなくなる
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NETで他のEXEを実行させる
-
マシンをスタンバイの状態にし...
-
ファイル名の日付について教え...
-
エクセルでファイルの最終更新...
-
沢山のフォルダにあるファイル...
-
論文に載せるグラフを作成したい
-
マイドキュメントのフォルダの...
-
WindowsからSSHでサーバーにあ...
-
vlan internal allocation poli...
-
YAHAMA RTXシリーズのコマンド...
-
共有しているファイルを削除し...
-
FTP 転送コマンド
-
teratarmでコマンド入力すると...
-
onedriveで同期解除をしたら、...
-
vb.net(vs2008)でのグラフ作成...
-
Excel VBAで作成したマクロをxl...
-
ファイルのプロパティの属性の...
-
Ciscoルーター 対向機器のIPア...
-
サブディレクトリも含めて最新...
-
CPコマンドでファイルがコピー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETで他のEXEを実行させる
-
if文の条件に関数が入ってる場...
-
C#で他のPCのサービスの起動...
-
再質問 コンボボックス リス...
-
WSHController/CreateScriptはa...
-
Word・Excelの「Ctrl+Y」につい...
-
シェルスクリプトに引数を渡す...
-
マシンをスタンバイの状態にし...
-
ファイル名の日付について教え...
-
コマンドプロンプトにてコマン...
-
コンボボックスのSelectedIndex
-
C++ arduinoのスケッチについて...
-
VBSでDBに接続する方法
-
VBAの乱数について質問
-
VBSでクエリを実行→クエリでテ...
-
vlan internal allocation poli...
-
エクセルでファイルの最終更新...
-
teratarmでコマンド入力すると...
-
TXTファイルを上書き保存する前...
-
YAHAMA RTXシリーズのコマンド...
おすすめ情報