Visual Basic 6.0 클래스의 기술 및 응용(1부)(이하 위)에서는 클래스 이론, 클래스 생성 및 클래스 메서드 프로그래밍 실습에 대해 논의했습니다. 소프트웨어 공학에서 널리 사용됩니다. 응용 프로그램에서 가장 중요한 점은 닫는 것이 매우 편리하다는 것입니다. 프로그래밍에 필요한 많은 속성을 설치하면 프로그래머는 제어(ocx) 및 링크 라이브러리(dll) 설계 및 디버깅의 복잡성을 어느 정도 극복할 수 있을 뿐만 아니라 프로그램 코드의 단순성과 효율성도 향상됩니다. 이 기사에서는 Complete class에 대해 설명합니다. 메소드, 속성 및 기본 이벤트를 포함한 프로그래밍.
(1) 클래스 속성의 특성 및 정의
표준 컨트롤의 속성과 유사하게 클래스 속성을 사용하면 사용자는 지정된 데이터 범위 내에서 값을 할당할 수 있으며 이러한 값은 클래스 내 코드의 다양한 부분에서 공유됩니다. 속성 획득 및 전송은 PRpertyLet 및 PropertyGet 문을 통해 프로그래밍해야 합니다. 물론 먼저 클래스의 전역 또는 모듈 수준에서 해당 변수를 정의해야 합니다.
(2) 사건의 속성과 기본 정의
양식의 이벤트와 유사하게 클래스에는 두 가지 기본 이벤트인 Class_Initialize(클래스가 로드될 때 트리거됨) 및 Class_Terminate(클래스가 언로드될 때 트리거됨)가 있으며 둘 다 비공개입니다. 실제로 클래스의 메서드와 속성을 완료하는 것을 기억하는 한 이 두 이벤트를 완전히 무시할 수 있습니다.
클래스는 매개 변수 선언에 WithEvents 키워드가 필요하고 이벤트에 명명된 매개 변수나 선택적 매개 변수가 있을 수 없으며 반환 값이 없다는 점을 제외하면 메서드의 프로그래밍 형식과 유사한 자체 이벤트를 정의할 수도 있습니다.
실제로 잘 구조화된 메서드와 속성은 복잡하게 구조화된 클래스의 이벤트를 완전히 대체할 수 있습니다.
(3) 클래스 메소드, 이벤트 및 속성의 프로그래밍 예 ;
이 프로그램의 목적은 클래스를 통해 양식의 텍스트 상자 내용에 대한 모든 대문자, 소문자 및 역순 정렬을 제어하는 것입니다.
코드 작성 및 호출을 용이하게 하기 위해 수업에서 열거형 프로그래밍 방법을 참조했습니다.
다음 코드는 Class1 클래스에 있습니다.
OptionExplicit
PrivateWithEventsmyTXTAsTextBox
'메서드 매개변수 인터페이스
PublicEnumsTYLE
Lcaseit' 소문자 속성
Lbigit의 대문자 속성
Nlogoit' 역정렬 속성
EndEnum
'속성의 자동 할당을 구현하는 데 사용되는 사용자 정의 열거형
PrivatemvarBiaozhiAssTYLE
'열거 상수 연결 구현
PublicFunctiondONE()AsString'
'DONE 메소드는
'양식 텍스트 상자에서 해당 문자 변환 작업을 수행합니다.
'그리고 변환된 문자열을 반환합니다.
IfmvarBiaozhi=NlogoitThen
dONE=StrReverse(myTXT)
'역순 정렬
ElseIfmvarBiaozhi=LcaseitThen
dONE=LCase(myTXT)
'강제 소문자 변환
또 다른
dONE=UCase(myTXT)
'강제 대문자 변환
종료
EndFunction
'DONE 메소드가 종료됩니다
PublicPropertyLetBiaozhi(ByValvDataAssTYLE)
'속성에 할당된 값을 가져옵니다.
mvarBiaozhi=vData
EndProperty
PublicPropertyGetBiaozhi()AssTYLE
'속성값을 클래스로 전송
SetBiaozhi=mvarBiaozhi
EndProperty
PublicSubAttach(itTEXTAsTextBox)
'접속 클래스 방식
SetmyTXT=itTEXT
EndSub
PrivateSubClass_Initialize()
'이 이벤트는 클래스가 로드될 때 활성화됩니다.
MsgBox "안녕하세요! 이 프로그램은 클래스 메소드, 속성 및 이벤트를 사용하여 프로그래밍하는 기술을 보여줍니다!"
EndSub
PrivateSubClass_Terminate()
'이 이벤트는 클래스가 언로드될 때 활성화됩니다.
MsgBox "안녕하세요! Class_Terminate에 개체 취소 코드를 입력하는 것을 잊지 마세요!"
EndSub
'수업 코드가 다 끝났어.
(4) 양식 코드의 참조 프로그래밍 ;
텍스트 컨트롤 TEXT1, 드롭다운 목록 컨트롤 COMBO1 및 명령 단추 COMMAND1(CAPTION="변환 시작")을 추가하여 FORM1을 형성하고 세 컨트롤을 적절한 위치로 조정합니다.
DimmyTAsNewClass1
'클래스 참조
PrivateSubForm_Load()
콤보1.클리어
Combo1.AddItem"문자열 대문자 변환"
Combo1.AddItem "문자열 소문자 변환"
Combo1.AddItem "문자열 역정렬"
Combo1.ListIndex=0
'목록 상자에 속성 옵션 추가
EndSub
PrivateSubCommand1_Click()
'명령 버튼을 누르면 클래스를 활성화합니다.
myT.AttachText1
'메서드 매개변수 연결
SelectCaseCombo1.ListIndex
사례0
myT.Biaozhi=Lbigit
사례 1
myT.Biaozhi=Lcaseit
사례2
myT.Biaozhi=Nlogoit
선택 종료
'목록 상자의 선택 사항에 따라 클래스의 Biaozhi 속성에 값을 할당합니다.
'프로그래밍 환경에서는 위의 속성 값이 자동으로 추가됩니다.
Text1.Text=myT.dONE
'정렬 후 문자열을 반환
EndSub
PrivateSubForm_Unload(CancelAsInteger)
SetmyT=아무것도 없음
끝
'좋은 프로그래밍 습관
EndSub
우리 코드는 너무 간결해 마치 컨트롤을 사용하는 것 같은 느낌이 듭니다. 이 컨트롤은 마음대로 호출할 수 있을 뿐만 아니라 VB의 자동 프롬프트 기능을 편리하게 사용할 수도 있습니다.
(5) 수업 프로그래밍 기술 요약 ;
엄밀히 말하면, 클래스는 VB 프로그래밍에서 매우 유용한 기술이며, 배우고 익히는 것도 어렵습니다. 그러나 소규모 소프트웨어 개발에서는 소프트웨어를 개선하기 위해 클래스가 광범위하고 효과적으로 사용됩니다. 효율성과 코드 명확성을 위해 더 많은 클래스 모듈, 컨트롤 및 연결 라이브러리를 사용하지 말고 표준 모듈로 교체해야 합니다.
이 기사의 코드 예제는 비교적 간단하지만 모듈 프로그래밍 기술의 모든 측면을 다루고 있으며, 초보자가 이를 통해 배우고 프로그래머가 함께 토론할 수 있기를 바랍니다. 아무리 복잡한 고층빌딩이라도 모두 평범한 벽돌로 만들어졌다는 사실을 믿어야 합니다. 마찬가지로, 소프트웨어 프로젝트가 아무리 복잡해도 프로그래밍 애호가와 프로그래머로 구성된다는 점만 다릅니다. 분석가는 동일한 프로그램 명령문으로 구성된 프로그램이 다르다는 것입니다. ->