
いつもココにはお世話になっております。
またよろしくお願いします。
VB.net(Visual Studio Express)を使用しています。
OSはWin7 64Bitです。
Form1にStatusStrip(名前:stsStrip1)を配置してその中にStatusLabel(名前:stsbarLabel1)がある普通のステータスバーがあります。
以下の様な処理をしているのですが、存在しないシリアルポートを設定するとWrite(sndData)で8秒間止まりますが、その間”処理中”が表示されないことが有ります。(1~2秒経って表示されることもある)
どうも、IO処理で待ちの状態になるとステータスバーの表示がうまく更新されないようなのです。
(UDP通信の時も同じ現象でした)
StatusStripの表示を即座に更新させるようなことは出来ないものでしょうか?
よろしくご享受願います。
'=======================================================
stsbarLabel1.Text="処理中"
Try
SerialPort1.PortName = "COM6" '存在しないポートを設定
SerialPort1.WriteTimeout = 8000 'タイムアウト8秒
SerialPort1.Open()
SerialPort1.Write(sndData) '送信
SerialPort1.Close()
Catch ex As Exception
エラー処理
End Try
stsbarLabel1.Text=""
'=======================================================
No.1ベストアンサー
- 回答日時:
stsbarLabel1.Text="処理中" と書いたからといって直ちに表示される訳では
ありません。
同様の現象がよく見られるのがループ中に ループカウント 等を表示した場合です。
従って、stsbarLabel1.Text="処理中" と書いた直後の行で
stsStrip1.Refresh()
又は、
Application.DoEvents()
を実行して、強制的に書き換えて見て下さい。
但し、ループ中 に強制的に書き換え処理を頻繁に行うと画面がちらつく事に
なり別の対策が必要になります。
因みに、VB.net(Visual Studio Express)を使用しています。 では通じません。
Visual Basic のバージョンを明記するなら正確に書いて下さい。
VBのバージョン・製品名の一覧
http://hanatyan.sakura.ne.jp/patio/read.cgi?mode …
ありがとうございます!
お陰様で問題をクリアすることが出来ました。
具体的には、Refresh()はStatusStripコントロールには使えないようでして、
Application.DoEvents()を使用することで解決出来ました。
>但し、ループ中 に強制的に書き換え処理を頻繁に行うと画面がちらつく事に
>なり別の対策が必要になります。
今回の場合はループの中で使用することは無いので大丈夫でしたが、覚えておきます。
>因みに、VB.net(Visual Studio Express)を使用しています。 では通じません。
>Visual Basic のバージョンを明記するなら正確に書いて下さい。
仰るとおりです。バージョンを書くのを忘れておりました…
以後気をつけます。
ちなみにバージョンは、Visual Studio 2013(Ver12)です。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) VBA リボンののリカバリーでオーバーフローエラーになります 2 2023/07/04 19:07
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Excel(エクセル) エクセルVBA マクロ処理中のポップアップメッセージについて 1 2023/08/04 21:34
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 4 2023/05/26 10:43
このQ&Aを見た人はこんなQ&Aも見ています
-
ToolStripStatusLabelを固定して配置したい。
Visual Basic(VBA)
-
エクセルStatusBar表示が変化しない
Excel(エクセル)
-
VB.NETで他のプロジェクトで作成したフォームを使う方法
Visual Basic(VBA)
-
-
4
DataGridViewの、選択されている行を取り出したい
Visual Basic(VBA)
-
5
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
6
データグリッドビューの一番最初の行に列を追加したい
Visual Basic(VBA)
-
7
DataGridViewの特定列に入力されている重複チェックをしたい
Visual Basic(VBA)
-
8
「タイプ初期化子が例外をスローしました」エラー何?
Visual Basic(VBA)
-
9
C# 超初心者です。 this.Refresh();という文を使いたいです
C言語・C++・C#
-
10
Hideについて(.NET)
Visual Basic(VBA)
-
11
System.IO.Directory.GetFilesの順番
Visual Basic(VBA)
-
12
VB.NET でのLaod/unLoad について
Visual Basic(VBA)
-
13
VB.NETでフォームロード中のエラー時に終了する方法について
Visual Basic(VBA)
-
14
フルパスから最後のディレクトリ名を取得したい。
Visual Basic(VBA)
-
15
ファイルダイアログを開いた時のキャンセルボタンの処理
Visual Basic(VBA)
-
16
タブコントロールのフォーカス枠を消したい
Visual Basic(VBA)
-
17
遅延バインディングを使用できません!の回避方法?
Visual Basic(VBA)
-
18
VS 2008(VB.NET)
Visual Basic(VBA)
-
19
OpenFileDialogを使った後にもう一度開くと以前のファイルを表示させたい。
Visual Basic(VBA)
-
20
同じソリューション内の別のプロジェクトのメソッド呼び出し
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロで、次のコードへ行く前...
-
【C#/Java?】try-catchでcatch...
-
vbaのエラー対応(実行時エラー...
-
順番に処理させたい
-
C#でタイトルバーを自動的に隠...
-
VB.NET SPRED(チェックボック...
-
private subモジュールを他のモ...
-
IF文に時間(何時から何時ま...
-
VBAで組み合わせソフトを作ろう...
-
VBAのIF分がうまくいかんっす...
-
VBAで時刻の記述方法
-
COBOL OCCURSで指定したデータ...
-
aspx の同時処理数について教え...
-
入力した値が不正というよりイ...
-
Timerイベントについて
-
どう増強すべきか
-
Excel VBA セルの名前があるか...
-
basp21でメールが2通送信される
-
ACCESSから、FAXのジョブを削除。
-
Word VBA。各マクロの間に待ち...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【C#/Java?】try-catchでcatch...
-
vbaのエラー対応(実行時エラー...
-
private subモジュールを他のモ...
-
マクロで、次のコードへ行く前...
-
シグナル 6(SIGABRT)とは?
-
特定の名前のオートシェイプの...
-
IF文に時間(何時から何時ま...
-
どう増強すべきか
-
特定のファイルを他のプロセス...
-
Word VBA。各マクロの間に待ち...
-
どうやってもFor文を抜けてしま...
-
Excel VBA セルの名前があるか...
-
ExcelのVBAで、選択したファイ...
-
【C#】Page_Loadさせない方法に...
-
StatusStripの表示が更新されな...
-
途中で処理を中断させたい (ア...
-
エクセル VBAで複数セル選択時...
-
Functionで戻り値を複数返す方法
-
VBAでBook読み込み時の非表示方...
-
VBA 複数の行を高速で削除する...
おすすめ情報