タイトル | : コールバックされた処理を分岐させる。 |
記事No | : 9557 |
投稿日 | : 2009/11/06(Fri) 14:33 |
投稿者 | : KEISUKE |
こんにちは、POSTデータではお世話になりなした、ありがとうございます。 vb暦 3ヶ月の初心者です、ワード検索ごGOOGLE等で調べましたが 解決できませんで、質問させていただきます。 環境はWindows Vista、使っているものはVB2008 Express Editionです。
下にあるコーディングのCALL 足作成(GX)で呼び出しているのを 別スレッドで動作させたいのですが、私の知っている知識では出来ません。 どの様にしましたら可能なのでしょうか?
Private Sub ReceiveDataCallBack(ByVal sender As Object, ByVal Did As _ DdeUtils.Data.DdeItemData) ' 受信データを表示 Dim savedata As New SaveDataClass() 'コールバックしたデータ Dim X As Integer = savedata.GetXLocation(DataGridView1, Did) Dim Y As Integer = savedata.GetYLocation(DataGridView1, Did)
If Did.ddeItem = "最良買気配値1" Then DataGridView1(X, Y).Value = DataConverter.ByteArrayToString_ (Did.ddeData, ControlChars.NullChar)) If Y = 0 Then Label6.Text = Val(DataConverter.ByteArrayToStrig_ (Did.ddeData, ControlChars.NullChar)) Call 板表示() End If ElseIf Did.ddeItem = "出来高" Then If Y = 1 Then Call 歩み() Call 足作成(GX) End If ElseIf Did.ddeItem = "現在値" Then If Y = 0 Then TextBox2.Text = CInt(DataConverter.ByteArrayToString_ (Did.ddeData, ControlChars.NullChar)) Call 監視() Else TextBox5.Text = CInt(DataConverter.ByteArrayToString_ (Did.ddeData, ControlChars.NullChar)) End If ElseIf Did.ddeItem = "現在値時刻" Then DataGridView1(X, Y).Value = (DataConverter.ByteArrayToString_ (Did.ddeData, ControlChars.NullChar)) Else DataGridView1(X, Y).Value = DataConverter.ByteArrayToString_ (Did.ddeData, ControlChars.NullChar) End If End Sub
Sub 足作成(ByVal GX)
Dim AT01 As Date, AT02 As Date AT01 = DataGridView1(2, 1).Value AT02 = DataGridView2(0, Me.GX).Value
If AT01 = TimeValue("9:00") And AT02 = TimeValue("9:00"Then GX = GX + 1 ElseIf AT01 = AT02 Then For X1 = 1 To 4 DataGridView2(X1, Me.GX).Value = DataGridView1(3, 1).Value Next X1 DataGridView2(5, Me.GX).Value = DataGridView1(5, 1).Value Me.GX = Me.GX + 1 ElseIf AT01 < AT02 Then DataGridView2(4, Me.GX - 1).Value = DataGridView1(3, 1).Value DataGridView2(5, Me.GX - 1).Value = DataGridView2(5, Me.GX - 1).Value End If
|