Visual Basic 6.0 クラスのテクノロジとアプリケーション (パート 1) (以下、上記と呼びます) では、クラスの理論、クラスの作成、クラス メソッドのプログラミングの実践について説明しました。ソフトウェアエンジニアリングで広く使用されている アプリケーションについて最も重要なことは、アプリケーションを閉じるのが非常に便利であることですプログラミングに必要な多くの属性をインストールすると、プログラマは制御 (ocx) およびリンク ライブラリ (dll) の設計とデバッグの複雑さをある程度克服できるだけでなく、プログラム コードの単純さと効率も向上します。この記事では Complete クラスについて説明します。メソッド、プロパティ、基本的なイベントなどのプログラミング。
(1)クラス属性の特徴と定義。
標準コントロールのプロパティと同様に、クラス プロパティを使用すると、ユーザーは指定されたデータ範囲内の値を割り当てることができ、これらの値はクラス内のコードのさまざまな部分で共有されます。属性の取得と転送は、PRpertyLet および PropertyGet ステートメントを通じてプログラムする必要があります。もちろん、最初にクラス内のグローバルまたはモジュール レベルで対応する変数を定義する必要があります。
(2)イベントの属性と基本定義。
フォームのイベントと同様に、クラスにも 2 つの基本イベント、Class_Initialize (クラスのロード時にトリガーされる) と Class_Terminate (クラスのアンロード時にトリガーされる) があり、どちらもプライベートです。実際、クラスのメソッドとプロパティを完了することを忘れない限り、これら 2 つのイベントは完全に無視できます。
クラスは独自のイベントを定義することもできます。これはメソッドのプログラミング形式に似ていますが、パラメーターの宣言に WithEvents キーワードが必要であること、イベントには名前付きパラメーターやオプションのパラメーターを持つことができず、戻り値がない点が異なります。
実際、適切に構造化されたメソッドとプロパティは、複雑な構造のクラスのイベントを完全に置き換えることができます。
(3)クラスメソッド、イベント、プロパティのプログラミング例。
このプログラムの目的は、クラスを通じてフォーム内のテキスト ボックスの内容の大文字、小文字、およびその逆の並べ替えをすべて制御することです。
コードの記述と呼び出しを容易にするために、クラス内の列挙型プログラミング メソッドを参照しました。
次のコードはクラス Class1 にあります。
オプション明示的
PrivateWithEventsmyTXTAsTextBox
'メソッドパラメータインターフェース
PublicEnumsTYLE
Lcaseit' 小文字属性
Lbigit の大文字化属性
Nlogoit の逆ソート属性
EndEnum
'カスタム列挙。属性の自動割り当てを実装するために使用されます。
PrivatemvarBiaozhiAsSTYLE
'列挙定数の接続を実装します
PublicFunctiondONE()AsString'
'DONE メソッドは、
'フォームのテキストボックスで対応する文字変換操作を実行します
'そして変換された文字列を返します
IfmvarBiaozhi=NlogoitThen
dONE=StrReverse(myTXT)
'逆ソート
ElseIfmvarBiaozhi=LcaseitThen
dONE=LCase(myTXT)
'小文字変換を強制する
それ以外
dONE=UCase(myTXT)
'強制的に大文字変換
EndIf
エンドファンクション
'DONEメソッド終了
PublicPropertyLetBiaozhi(ByValvDataAssTYLE)
'属性に割り当てられた値を取得します
mvarBiaozhi=vData
終了プロパティ
PublicPropertyGetBiaozhi()AssTYLE
'属性値をクラスに転送
SetBiaozhi=mvarBiaozhi
終了プロパティ
PublicSubAttach(itTEXTAsTextBox)
'接続クラスのメソッド
SetmyTXT=itTEXT
EndSub
PrivateSubClass_Initialize()
'このイベントはクラスがロードされるときにアクティブ化されます
MsgBox "こんにちは! このプログラムでは、クラス メソッド、プロパティ、イベントを使用したプログラミングのテクニックを紹介します!"
EndSub
PrivateSubClass_Terminate()
'このイベントはクラスがアンロードされるときにアクティブになります
MsgBox "こんにちは! Class_Terminate にオブジェクトのキャンセル コードを忘れずに入力してください!"
EndSub
'クラスのコードはすべて終わりました
(4)フォームコードのリファレンスプログラミング。
テキスト コントロール TEXT1、ドロップダウン リスト コントロール COMBO1、コマンド ボタン COMMAND1 (CAPTION="変換開始") を FORM1 に追加し、3 つのコントロールを適切な位置に調整します。
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 プログラミングでは非常に役立つテクノロジですが、学習して習得するのが難しいものでもあります。ただし、小規模なソフトウェア開発では、ソフトウェアを改善するためにクラスが広く効果的に使用されます。効率性とコードの明瞭性を確保するには、これ以上のクラス モジュール、コントロール、接続ライブラリの使用を避け、標準モジュールに置き換える必要があります。
この記事のコード例は比較的単純ですが、モジュール プログラミング テクノロジのあらゆる側面をカバーしているので、初心者はそこから学び、プログラマーは一緒に議論できることを願っています。高層ビルがどれほど複雑であっても、それらはすべて普通のレンガでできていると信じるべきです。同様に、ソフトウェア プロジェクトがどれほど複雑であっても、それらはプログラミング愛好家やプログラマーとの唯一の違いです。アナリストは、同じプログラムステートメントで構築されたプログラムは異なると考えています。 ->