
No.6ベストアンサー
- 回答日時:
#2です。
> Txt_1.Text = inttmp2 '・・・・・・画面上text1にモニタ値を表示
> inttmp3 = inttmp2 & Chr(13) & Chr(10) & inttmp3
(1)リストボックスに改行コードは必要ありません。
#「Chr(13) & Chr(10)」はいらない。
(2)リストボックスは、1行1データなので、以前に設定済みの物に追加する必要はありません。
#「& inttmp3」はいらない。
#ちなみに、テキストボックは、全体で1データなので、
#改行が必要ですし、設定済みのデータに追加しなければなりません。
つまり、「inttmp2」のままでよいということです。
> List1.AddItem "inttmp3" '・・・・・・画面上リスト1にモニタ値を順次表示
(3)コレでは、「inttmp3」と言う文字になってしまいます。
変数名を指定するのに、"~"は不要です。
(4)先頭に追加したいのですから、追加位置(先頭なら「0」)を指定しておかなければなりません。
って事で、
> inttmp3 = inttmp2 & Chr(13) & Chr(10) & inttmp3
この行は、完全に必要なく、
> List1.AddItem inttmp2,0 '・・・・・・画面上リスト1にモニタ値を
とするだけでよさそうですけど・・・
どうもありがとうございました。m(__)m
順次表示できました。あともうちょっと味付けが必要なようですがw
大変お世話になりました。また、よろしくお願い致します。
No.4
- 回答日時:
#2です。
> それでリストボックスで組んでみたんですが、うまく出来ません;;
とりあえず、組んでみたコードを見せてください。
後、どう「うまくいかない」かも教えてください。
#「XXXXとなると思ったが、XXXXとなってしまう」とかのレベルで構いません。
単純に、
> 現在inttmpと言う変数に毎回測定値が書き換わるようにして
> Text1.textに表示できるようになってるのですが
と同じタイミングで、AddItemメソッドを実行するだけで済むと思うんですが・・・
この回答への補足
Private Sub Timer3_Timer()
Timer3.Enabled = False
'レスポンス受信で正常・異常判定
buf = MSComm1.Input
kioku1 = Mid(buf, 42, 1)
response1 = Mid(buf, 36, 4) '・・・・・・レスポンスコードで正常か異常か判定する
Select Case response1
Case "0000" '・・・・・・0000(正常なら、イベントか計測値か判定)
'イベントか計測レスポンスかを判定
Select Case response2
Case "1" '・・・・・・イベントレスポンスだった場合
taiming = Mid(buf, 42, 1) '・・・・・タイミングを計って記録する
Timer2.Enabled = True '・・・・・・計測コマンドを送信
Case "2" '・・・・・・計測レスポンスだった場合
strmidstring = Mid(buf, 40, 8) 'MID関数で右から40番目から8番目までを抜き取り
inttmp = Val("&H" & strmidstring) '16進数を10進数に変換
inttmp2 = Val(inttmp / 1000)
Txt_1.Text = inttmp2 '・・・・・・画面上text1にモニタ値を表示
inttmp3 = inttmp2 & Chr(13) & Chr(10) & inttmp3
List1.AddItem "inttmp3" '・・・・・・画面上リスト1にモニタ値を順次表示
Open "test_kiroku.csv" For Append As #1
Write #1, Now, inttmp2 '・・・記録ファイルに保存
Close #1
Timer1.Enabled = True '・・・・・イベントコマンドを送信
End Select
Case Else 'ケースが"0000”以外の時の処理
Timer1.Enabled = True 'レスポンスコードが異常の場合、再度イベントコマンドを送信
End Select
End Sub
文字数に制限がありましたので、補足に記載しました。ちょっと恥ずかしいのですが(´・ω・`)
リストに順次現れるのですが、「inttmp3」がずらずらと現れてしまいます。
No.3
- 回答日時:
#2です。
> リストボックスでも考えましたが、表示画面一杯になった場合次はどうなるのでしょう?
どうなるとは??
「あふれた分は、下に隠れて、スクロールバーで表示できます。」
と言う答えで良いのかな??
リストボックスも、追加する場所が指定できますから、
先頭に追加するようにすれば済むと思いますが・・・
#そうすれば、古いデータから順に、下に隠れていく。
そうだったんですか・・了解しました。
それでリストボックスで組んでみたんですが、うまく出来ません;;
現在inttmpと言う変数に毎回測定値が書き換わるようにしてText1.text
に表示できるようになってるのですが、このinttmpを使用してリスト
ボックスに表示していくには、どうのような構文にすればいいのでしょう?
具体的にご教授お願い出来ないでしょうか?m(__)m
No.2
- 回答日時:
「SelStartプロパティ」で、先頭を指定して、
「SelTextプロパティ」で、追加する。
と言うのが、簡単だと思います。
#改行コードを追加するのを忘れないように。
> テキストボックス内は記載できなくて結構です。単に取り込むだけでOK
だったら、テキストボックスじゃなくても良さそうですが・・・
例えば、リストボックスとか・・・
ご回答ありがとうございます。
リストボックスでも考えましたが、表示画面一杯になった場合次はどうなるのでしょう?
測定値は目に見える範囲は10個ぐらいで、過去の測定値(表示画面からはみ出た数値を、マルチラインで履歴を見るみたいなことがしたいのですが・・・
うまく表現が出来ず申し訳ございません。
No.1
- 回答日時:
Dim DataValues(4) As Double
Private Sub Form_Load()
DataValues(0) = 567.6
DataValues(1) = 653.1
DataValues(2) = 256#
DataValues(3) = 345.5
DataValues(4) = 123#
End Sub
Private Sub Timer1_Timer()
Static I As Integer
If I = 0 Then
Me.Text1 = ""
End If
Me.Text1 = Format(DataValues(I), "0.0") & Chr$(13) & Chr$(10) & Me.Text1
I = (I + 1) Mod 5
End Sub
このコードを実行すると望みの結果が得られていることが確認できると思います。
ご回答ありがとうございました。
測定値の読み込みは出来ています。と書かせて頂きましたが、測定値は
その都度変動します。
Text1.textには受信の都度、毎回表示できています。
と同時にText2.textに履歴を残したいのですが・・・
上記ですと、数値が固定してないとできないと思うのですが・・・
質問の仕方が悪くてもうしわけございませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C# DataTableに最後に追加した...
-
【ExcelVBA】値を変更しながら...
-
【VB.NET】Excelの最終行までの...
-
非同期のプロセス間通信(パイプ...
-
VBAコンボボックスの内容が反映...
-
COBOL数値転記の仕様
-
エクセルのCSV読み込みについて
-
Excel VBAで1週間毎にカテゴリ...
-
Excel VBAでグラフの可変データ...
-
部品表
-
VB6のMsFlexGridコントロールに...
-
Web画面のTableから数字を取得...
-
VB.Net ResetBindings リクエリ
-
MSFlexGrid 行選択状態
-
2次元のdictionary
-
VB6からの移行したいけど、VB.N...
-
VBA 変数名に変数を使用したい。
-
構造体配列の特定のメンバーをF...
-
『列名 '担当者CD' があいま...
-
VBとアクセスでSQL文に変...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C# DataTableに最後に追加した...
-
VBAコンボボックスの内容が反映...
-
TextBox内の改行
-
【C#】textBoxの指定行のデータ...
-
【VB.NET】Excelの最終行までの...
-
COBOL数値転記の仕様
-
AccessVBAでのExcelメモリ解放
-
VBAでアクセスDBからデータの取...
-
XMLでデータとして画像を指定す...
-
「Nullの使い方が不正です」の...
-
【ExcelVBA】値を変更しながら...
-
非同期のプロセス間通信(パイプ...
-
アクセスでウェブ上のデータを...
-
Excel VBAでフォルダ内の全テキ...
-
エクセルのセル最終行取得
-
batでレジストリキーから読み取...
-
データベースへのアクセス
-
vbaで出来ますか?
-
ListViewで表示されたデータの...
-
ACCESS2010で直近の日付を取得...
おすすめ情報