Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: ООП в VB6 Добавлено: 29.11.07 13:08  

Автор вопроса:  KreAtoR
подскажите что здесь не то. пытаюсь сделать наследование класса, но никак не получается

Form1
Option Explicit

Dim mil As clsInfra

Private Sub Form_Load()
     Set mil = New clsMilitär
     mil.lName = "Test"
     MsgBox mil.gName
End Sub


clsInfra
Option Explicit
    
    Implements clsStructure
    Private str As New clsStructure
    
    Public Property Get gName()
        gName = str.GetName
    End Property
    
    Public Property Let lName(newName As String)
        str.SetName = newName
    End Property


clsStructure
        Option Explicit
        
    Dim Name As String
    
Public Property Get GetName()
     GetName = Name
End Property

Public Property Let SetName(newName As String)
    Name = newName
End Property



пытаюсь унаследовать класс Infra от класса structure
при загрузке программы присвоить объекту класса Infra имя и вывести его с успехом на экран

Ответить

  Ответы Всего ответов: 4  

Номер ответа: 1
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #1 Добавлено: 30.11.07 15:44
Не втыкаю в 4-ю строчку кода Form1. Какое-то странное имя класса =)
И еще: разве можно объявлять имена функции переменными? Я имею ввиду переменную Name. Назови ее хотя бы strName.

Ответить

Номер ответа: 2
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #2 Добавлено: 30.11.07 23:45
Кхм... Насчет Name - это я с чем-то спутал.

Form1
Option Explicit

Dim mil As clsInfra

Private Sub Form_Load()
     Set mil = New clsInfra
     mil.lName = "Test"
     MsgBox mil.gName
End Sub

Все прекрасно работает без одной строчки:
Implements clsStructure
Зачем она?!

Ответить

Номер ответа: 3
Автор ответа:
 Viper



ICQ: 249094859 

Вопросов: 0
Ответов: 310
 Профиль | | #3 Добавлено: 01.12.07 07:33
KreAtoR, а в каком месте ты собственно пытаешься что-либо наследовать то? Вернее реализовать интерфейс, ибо наследования(нормального, человеческого) в VB6 нет.

Ответить

Номер ответа: 4
Автор ответа:
 ENIX



ICQ: 238819245 

Вопросов: 9
Ответов: 76
 Профиль | | #4 Добавлено: 03.12.07 19:06
"в VB нету нормального наследования" слышу эту фразу много раз и от многих. Провести сравнение с как минимум 3-мя языками пока не удалось.

Я в принципе вижу
Implements clsStructure

clsInfra наследует основные свойства класса clsStructure

Могу посоветовать создание ActiveX библиотеки dll (c) VB. Там есть хорошая возможность построения иеархии классов и создать "ОО Структуру"

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам