| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1514 人关注过本帖
标题:有没有人建过VB6 子类的
取消只看楼主 加入收藏
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
结帖率:97.66%
收藏
已结贴  问题点数:20 回复次数:5 
有没有人建过VB6 子类的
因为原本程式内已经有个类了〜可是应使用者需求要加入功能〜
但是放在一起太复杂了〜想切成两个子类〜
不知道版上大神有没有能提供一个简单的示例代码〜
让我理解一下父类与子类和表单之间的关系〜

光一个类就将近1万5千行了〜要加入此功能估计要变3万行〜
想切割一下代码量〜

[此贴子已经被作者于2018-5-22 16:14编辑过]

搜索更多相关主题的帖子: VB6 子类 代码 父类 关系 
2018-05-22 16:08
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
可以〜类似吧〜
在表单定义类的物件名称〜在指定地点再去呼叫父类的相关功能〜
在父类定义子类的物件名称〜在指定地点再去呼叫子类的相关功能〜
也是一层呼叫下一层的概念〜原来还蛮简单的〜

不要選我當版主
2018-05-22 17:08
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
1加到100用父子类做〜我是这样理解的〜功能切分的简单示例〜
当然实际上在用没那么简单〜

Form1
程序代码:
Option Explicit
Dim AA As Class1
Private Sub Form_Load()
    Set AA = New Class1
    MsgBox AA.AA(100)
    Set AA = Nothing
End Sub


Class1
程序代码:
Option Explicit
Dim AAA As Class2
Public Function AA(Count As Integer) As Integer
Dim i As Integer, BB As Integer
    BB = 0
    Set AAA = New Class2
    For i = 0 To Count
        AA = AAA.AA(AA, i)
    Next i
    Set AAA = Nothing
End Function


Class2
程序代码:
Option Explicit
Public Function AA(i As Integer, j As Integer) As Integer
    AA = i + j
End Function


图片附件: 游客没有浏览图片的权限,请 登录注册

不要選我當版主
2018-05-22 17:39
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
突然想到如果要做类事件要怎写?
父类可以反馈给表单〜子类并不直接跟表单接触〜
所以就无法处发事件反馈给表单了〜

不然就是又要下一层事件透过上一层事件传递资讯给表单吗?

不要選我當版主
2018-05-22 17:43
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
以下是引用风吹过b在2018-5-22 17:30:19的发言:

VB6 不完全支持类, 以前看到 牛人写过 继承来,但没看懂。。。。。


好复杂〜VB6就剩集合没用过〜也不知道怎么用了〜

图片附件: 游客没有浏览图片的权限,请 登录注册

不要選我當版主
2018-05-22 17:46
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
我是要增加因条件切换功能~偷懒用另一个类做~也能这样玩~

Form1
程序代码:
Option Explicit
Dim AA As Class1
Private Sub Form_Load()
    Set AA = New Class1
    MsgBox AA.AA(0, 10)
    MsgBox AA.AA(1, 10)
    Set AA = Nothing
End Sub

Class1
程序代码:
Option Explicit
Dim AAA As Class2
Public Function AA(Mode As Integer, Count As Long) As Long
Dim i As Integer, BB As Integer
    BB = 0
    Set AAA = New Class2
    If Mode = 0 Then
        For i = 1 To Count
            AA = AA + i
        Next i
    ElseIf Mode = 1 Then
        AA = AAA.AA(Count)
    End If
    Set AAA = Nothing
End Function

Class2
程序代码:
Option Explicit
Public Function AA(i As Long) As Long
Dim ii As Integer
    AA = 1
    For ii = 1 To i
        AA = AA * ii
    Next ii
End Function


图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

不要選我當版主
2018-05-22 18:05
快速回复:有没有人建过VB6 子类的
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043337 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved