タイトル : ダミーデータは表示可能となりました。 投稿日 : 2008/03/06(Thu) 16:24 投稿者 : tea
琴さん、回答をいただき本当にありがとうございます。 ご指摘いただいた内容を元にコードを書き換えてみましたが、 標準モジュール内にあるダミーデータが初めてPictureBoxに 表示されました。 標準モジュール内 .AnElapsedTime(1) = 2 .AnElapsedTime(2) = 2 .AnElapsedTime(3) = 3 .AnElapsedTime(4) = 4 .AnElapsedTime(5) = 4 .AnElapsedTime(6) = 6 .AnElapsedTime(7) = 0 これでPictureBox内の7箇所の表示は 「2」「2」「3」「4」「4「6」「=」と表示されました。 書き換えたコードは以下ですが、実行すると今度は表示箇所は空白と なり、2回目以降も空白となります。 ブレークポイントをIf mp.Game.Team(ixTeam).TimeOutted(i) Thenに 置いて「F8」で追っていくとCall .AnElapsedTimeへ進み、次にEnd If に進みます。 > .AnElapsedTime(i) と i を勘違いしてるってことはないですよね?^^; このiはFor i = bbTimeOutMin To bbTimeOutMaxのiだと思っているんですが 間違っていますでしょうか? > 試しにCInt関数とかで数値型に変換してみてください。 これから調べて試してみます。 引き続きどうか教えてください。 よろしくお願いします。 PrintEngneクラス Public Sub TimeOutMinutes(ByVal Col As Single, _ ByVal Row As Single, _ ByVal Cols As Single, _ ByVal Rows As Single, _ Optional ByVal Color As Variant = Empty, _ Optional ByVal Font As Object = Nothing, _ Optional ByVal Index As bbTime) Dim Text As Integer Dim Alignment As EAlignment33 Text = Index With makeMatrixRect(Col, Row, Cols, Rows) drawText .Left + 0.2, .Top + 0.05, .Right, .Bottom, _ Text, Alignment, Color, Font End With End Sub Public Sub AnElapsedTime(Optional ByVal Index As bbTime) Dim A As Integer Dim b As Integer Dim c As Integer Dim d As Integer b = Game.Setting.QuarterMinutes c = Left(frmMain.vsGameTime.Value / 60, 1) d = b - c Index = d End Sub RScoreSheetCommanderクラス drawteam ixRow = ixRow + 1 For i = bbTimeOutMin To bbTimeOutMax .DrawMatrixBox i, ixRow, 1, 1 If mp.Game.Team(ixTeam).TimeOutted(i) Then If mp.Game.Team(ixTeam).AnElapsedTime(i) = -1 Then Call .AnElapsedTime ElseIf mp.Game.Team(ixTeam).AnElapsedTime(i) <> -1 Then Index = mp.Game.Team(ixTeam).AnElapsedTime(i) .TimeOutMinutes i, ixRow, 1, 1, _ colorByQuarter(mp.Game.Team(ixTeam).TimeOutted(i)), _ , Index End If Else '「=」ダブルラインを表示する。 .DrawMatrixCenterDoubleLine i, ixRow, 1, 0.95, _ colorByQuarter(mp.Game.Team(ixTeam).TimeOutted(i)) End If Next |