tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^2: 「引数を省略できません。」というエラーの対処を教えてください。
投稿日: 2008/02/28(Thu) 16:33
投稿者tea
よねKENさん、回答ありがとうございます。

また、下手な質問で申し訳ありませんでした。

mpはTeamクラス内で

Option Explicit
'ユーザー定義型変数を宣言'
Private Type UTeam
    Parent As Game
    IsDirty As Boolean
    TeamIndex As Long
    TeamChar As String
    
    Name As String
    Coach As Player
    ACoach As Player
        
    Playeries As Collection
    GameMembers(1 To 5) As Player
    
    TimeOutted(bbTimeOutMin To bbTimeOutMax) As Integer
    QuarterScore(bbQuarterMin To bbQuarterMax) As Long
    QuarterFoulCount(bbQuarterMin To bbQuarterMax) As Long
End Type
Private mp As UTeam

と宣言しています。

.Parentは作って(改良)いるソフトはゲームでA,Bチームのことを指します。

Public Property Get Parent() As Game
    'オブジェクト変数にオブジェクトを格納'
    Set Parent = mp.Parent
End Property

.Journalはソフトを動作させた場合に起こったイベントを記録していくものです。

.AddTopicはJournalクラスに以下のように記述されています。

Public Sub AddTopic(ByVal Quarter As Long, _
                    ByVal TimeOnQuarter As Date, _
                    ByVal TeamIndex As Long, _
                    ByVal TeamChar As String, _
                    ByVal PlayerUniformNumber As Long, _
                    ByVal TopicType As bbTopicType, _
                    ByVal TopicParam1 As Variant, _
                    ByVal TopicParam2 As Variant)
    'ローカル変数を宣言'
    Dim oJT As JournalTopic
    
    With mp
        '' ジャーナル記録。
        Set oJT = New JournalTopic
        With oJT
            .Init Me
            .TimeOnQuarter = TimeOnQuarter
            .TeamIndex = TeamIndex
            .TeamChar = TeamChar
            .PlayerUniformNumber = PlayerUniformNumber
            .TopicType = TopicType
            .TopicParam1 = TopicParam1
            .TopicParam2 = TopicParam2
            
        End With
        'コレクションにジャーナル記録を追加'
        .QuarterJournal(Quarter).Add oJT
        
        '' 結果記録。
        With .Parent.Team(TeamIndex)
            With getPlayerOrCoach(TeamIndex, PlayerUniformNumber)
                .TopicCount(TopicType) = .TopicCount(TopicType) + 1
                Select Case TopicType
                    Case bbFoulTopic:       .FoulType(.FoulCount) = TopicParam1
                    Case bbPlayInTopic:     .IsPlayIn = True
                    Case bbPlayOutTopic:    .IsPlayIn = False
                    '---ジャーナル用タイムアウト---
                    'Case bbTimeOutTopic:    .ChargedTimeOut
                End Select
            End With
            
            '' チーム。
            Select Case TopicType
                Case bb2PShotTopic
                    .QuarterScore(Quarter) = .QuarterScore(Quarter) + 2
                Case bb3PShotTopic
                    .QuarterScore(Quarter) = .QuarterScore(Quarter) + 3
                Case bbFreeThrowTopic
                    .QuarterScore(Quarter) = .QuarterScore(Quarter) + 1
                Case bbFoulTopic:
                    .QuarterFoulCount(Quarter) = .QuarterFoulCount(Quarter) + 1
            End Select
        End With
        
        
        
        .IsDirty = True
        'トピックの追加後に、追加したトピックを知らせる。'
        .Parent.RaiseJournalAfterInsert Quarter, .QuarterJournal(Quarter).Count
    End With
End Sub

質問した.Parent.Journal.AddTopic .Parent.Quarter, .Parent.TimeOnQuarter, .TeamIndex,
.TeamChar, "", bbTimeOutTopic, "", ""は
.Parent.Journal.AddTopic
.Parent.Quarter(1から4のどのクォーターか?),
.Parent.TimeOnQuarter(クォーターの時間は?),
.TeamIndex(0がAチーム、1がBチーム),

.TeamChar,はクラス内で下記のようにに宣言しています。
Public Property Get TeamChar() As String
    TeamChar = mp.TeamChar
End Property

""(背番号が入りますが、ここでは空白)
, bbTimeOutTopic("チャージドタイムアウト"の文字が入ります。),
""(ここも空白です。)
, ""(ここも空白です。)

参考にしたコードは以下のコードで、これを真似てコードを書き換えてみた
ものの「引数を省略できません」とエラーが出るんです。

Public Function AddTopic(ByVal PlayerUniformNumber As Long, _
                    ByVal TopicType As bbTopicType, _
                    ByVal TopicParam1 As Variant, _
                    ByVal TopicParam2 As Variant)
    With mp
        '追加するトピックの各項目'
        .Parent.Journal.AddTopic .Parent.Quarter, .Parent.TimeOnQuarter,
     .TeamIndex, .TeamChar, PlayerUniformNumber, TopicType,
       TopicParam1, TopicParam2
    End With
End Function

わかりづらい文章になって申し訳ありませんが、引数をどう書けば解決するの
か教えてください。
よろしくお願いします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。