在FORM中调用函数
Call PublicFunction.SetFont(frmCMW002)'********************************************************************
' 概要       : 字体を設定
' パラメータ : frmForm,I,Form,フォームオブジェクト
' 説明       : なし
'********************************************************************
Public Sub SetFont(frmForm As Form)
On Error Resume Next
    Dim objFormItem() As Object                     'フォームの対象
    Dim intIndex As Integer
    
    ReDim objFormItem(frmForm.count)
    
    For intIndex = 0 To frmForm.count
        Set objFormItem(intIndex) = frmForm.Controls.Item(intIndex)
        objFormItem(intIndex).Font = GSTR_FONTNAME
    Next intIndex
    
End Sub
frmForm.count 是什么意思?count应该是FORM数量吧!但一个的FORM数量应该是1吧!
那么frmForm.count永远都为1。帮我看看这个地方?

解决方案 »

  1.   

    frmForm.count表示frmForm上所有對象的個數
    例如﹕在你的form上有一個Label,一個Text,一個Combo.這是form.count就等于3
      

  2.   

    上面的代碼就是把form上所有的字體都改成 GSTR_FONTNAME類型
      

  3.   

    看字面的意思是把FORM上的所有字体改成GSTR_FONTNAME類型,具体怎么写注释还没理解透up下可以吗?
      

  4.   

    Public Sub SetFont(frmForm As Form)
    On Error Resume Next
        Dim objFormItem() As Object                     '定義一個對象數組
        Dim intIndex As Integer                         '循環控制變量
        
        ReDim objFormItem(frmForm.count)            '根據frmForm上的對象數確定數組長度
        
        For intIndex = 0 To frmForm.count
            Set objFormItem(intIndex) = frmForm.Controls.Item(intIndex) '這個地方自己體會吧﹐我現在也沒非常准確的描述﹐可以象 給指針付值那樣思考
            objFormItem(intIndex).Font = GSTR_FONTNAME   '字體類型設置為GSTR_FONTNAME
        Next intIndex
        
    End Sub