ВУЗ:
Составители:
Рубрика:
ɝɨ ɤɥɚɫɫɚ ɧɟɬ, ɜɵɛɪɚɬɶ ɧɟɩɨɫɪɟɞɫɬɜɟɧɧɨ TPropertyEditor ɢ ɩɟɪɟɨɩɪɟ-
ɞɟɥɢɬɶ ɧɟɤɨɬɨɪɵɟ ɟɝɨ ɦɟɬɨɞɵ. Ȼɨɥɟɟ ɩɨɞɪɨɛɧɭɸ ɢɧɮɨɪɦɚɰɢɸ ɫɦ. ɜ [3, 5].
2.4. Ɇɟɬɨɞɵ
ɉɨɫɤɨɥɶɤɭ ɦɟɬɨɞɵ ɞɨɫɬɭɩɧɵ ɩɨɥɶɡɨɜɚɬɟɥɹɦ ɜɨ ɜɪɟɦɹ ɜɵɩɨɥɧɟɧɢɹ
ɤɨɦɩɨɧɟɧɬ, ɜɚɠɧɨ ɩɪɚɜɢɥɶɧɨ ɢɯ ɢɦɟɧɨɜɚɬɶ. ɂɦɟɧɚ ɦɟɬɨɞɨɜ ɞɨɥɠɧɵ ɛɵɬɶ
ɨɩɢɫɚɬɟɥɶɧɵɦɢ ɢ ɢɫɩɨɥɶɡɨɜɚɬɶ ɚɤɬɢɜɧɵɟ ɝɥɚɝɨɥɵ. ɉɨɞɨɛɧɵɦ ɠɟ ɨɛɪɚɡɨɦ
ɢɦɟɧɚ ɮɭɧɤɰɢɣ ɞɨɥɠɧɵ ɭɤɚɡɵɜɚɬɶ ɧɚ ɬɨ, ɱɬɨ ɨɧɢ ɜɨɡɜɪɚɳɚɸɬ. ȼɨɬ ɧɟ-
ɫɤɨɥɶɤɨ ɩɪɢɦɟɪɨɜ ɩɨɞɯɨɞɹɳɢɯ ɢ ɧɟɩɨɞɯɨɞɹɳɢɯ ɢɦɟɧ ɦɟɬɨɞɨɜ [2]:
ɉɨɞɯɨɞɹɳɢɟ ɇɟɩɨɞɯɨɞɹɳɢɟ
Procedure CutToClipboard procedure Cut
Procedure SetHeight procedure SetH
function GetTextLen function Len
Ɇɟɬɨɞɵ ɦɨɝɭɬ ɪɚɡɦɟɳɚɬɶɫɹ ɜ ɪɚɡɞɟɥɚɯ public, protected ɢɥɢ
private ɨɛɴɹɜɥɟɧɢɹ ɤɨɦɩɨɧɟɧɬɚ. Ɋɟɲɟɧɢɟ ɨ ɬɨɦ, ɝɞɟ ɫɥɟɞɭɟɬ ɪɚɡɦɟɫɬɢɬɶ
ɤɨɧɤɪɟɬɧɵɣ ɦɟɬɨɞ, ɡɚɜɢɫɢɬ ɨɬ ɬɨɝɨ, ɤɚɤ ɨɧ ɛɭɞɟɬ ɢɫɩɨɥɶɡɨɜɚɬɶɫɹ. Ɇɟɬɨɞɵ,
ɞɨɫɬɭɩɧɵɟ ɩɨɥɶɡɨɜɚɬɟɥɸ ɜɨ ɜɪɟɦɹ ɜɵɩɨɥɧɟɧɢɹ, ɞɨɥɠɧɵ ɪɚɡɦɟɳɚɬɶɫɹ ɜ
ɪɚɡɞɟɥɟ public (ɨɛɳɟɞɨɫɬɭɩɧɵɣ). ɋɩɟɰɢɮɢɱɟɫɤɢɟ, ɡɚɜɢɫɹɳɢɟ ɨɬ ɪɟɚɥɢɡɚ-
ɰɢɢ ɦɟɬɨɞɵ ɞɨɥɠɧɵ ɪɚɡɦɟɳɚɬɶɫɹ, ɩɨ ɦɟɧɶɲɟɣ ɦɟɪɟ, ɜ ɪɚɡɞɟɥɟ protected
(ɡɚɳɢɳɟɧɧɵɣ). ȼ ɷɬɨɦ ɫɥɭɱɚɟ ɩɨɥɶɡɨɜɚɬɟɥɶ ɤɨɦɩɨɧɟɧɬɚ ɧɟ ɫɦɨɠɟɬ ɫɥɭɱɚɣ-
ɧɨ ɜɵɩɨɥɧɢɬɶ ɦɟɬɨɞɵ, ɡɚɜɢɫɹɳɢɟ ɨɬ ɪɟɚɥɢɡɚɰɢɢ. Ɇɟɬɨɞɵ, ɤɨɬɨɪɵɟ ɞɨɥɠɧɵ
ɛɵɬɶ ɞɨɫɬɭɩɧɵ ɜ ɩɨɪɨɠɞɟɧɧɵɯ ɤɥɚɫɫɚɯ, ɫɥɟɞɭɟɬ ɪɚɫɩɨɥɚɝɚɬɶ ɜ ɪɚɡɞɟɥɟ
protected.
Ɂɚɦɟɱɚɧɢɟ. Ɇɟɬɨɞɵ, ɨɛɴɹɜɥɟɧɧɵɟ ɭ ɩɪɟɞɤɚ ɫ ɚɬɪɢɛɭɬɚɦɢ virtual,
dynamic ɢɥɢ abstract, ɫɥɟɞɭɟɬ ɩɟɪɟɨɩɪɟɞɟɥɹɬɶ ɫ ɚɬɪɢɛɭɬɨɦ
override.
ȼɫɟ ɤɨɦɩɨɧɟɧɬɵ Delphi ɞɨɥɠɧɵ ɢɦɟɬɶ ɦɟɬɨɞ-ɤɨɧɫɬɪɭɤɬɨɪ, ɢɫɩɨɥɶ-
ɡɭɟɦɵɣ ɞɥɹ ɫɨɡɞɚɧɢɹ ɷɤɡɟɦɩɥɹɪɚ ɤɥɚɫɫɚ ɢ ɢɦɟɸɳɢɣ ɫɥɟɞɭɸɳɢɣ ɜɢɞ:
constructor Create(AOwner : TComponent); override;
16
ɝɨ ɤɥɚɫɫɚ ɧɟɬ, ɜɵɛɪɚɬɶ ɧɟɩɨɫɪɟɞɫɬɜɟɧɧɨ TPropertyEditor ɢ ɩɟɪɟɨɩɪɟ-
ɞɟɥɢɬɶ ɧɟɤɨɬɨɪɵɟ ɟɝɨ ɦɟɬɨɞɵ. Ȼɨɥɟɟ ɩɨɞɪɨɛɧɭɸ ɢɧɮɨɪɦɚɰɢɸ ɫɦ. ɜ [3, 5].
2.4. Ɇɟɬɨɞɵ
ɉɨɫɤɨɥɶɤɭ ɦɟɬɨɞɵ ɞɨɫɬɭɩɧɵ ɩɨɥɶɡɨɜɚɬɟɥɹɦ ɜɨ ɜɪɟɦɹ ɜɵɩɨɥɧɟɧɢɹ
ɤɨɦɩɨɧɟɧɬ, ɜɚɠɧɨ ɩɪɚɜɢɥɶɧɨ ɢɯ ɢɦɟɧɨɜɚɬɶ. ɂɦɟɧɚ ɦɟɬɨɞɨɜ ɞɨɥɠɧɵ ɛɵɬɶ
ɨɩɢɫɚɬɟɥɶɧɵɦɢ ɢ ɢɫɩɨɥɶɡɨɜɚɬɶ ɚɤɬɢɜɧɵɟ ɝɥɚɝɨɥɵ. ɉɨɞɨɛɧɵɦ ɠɟ ɨɛɪɚɡɨɦ
ɢɦɟɧɚ ɮɭɧɤɰɢɣ ɞɨɥɠɧɵ ɭɤɚɡɵɜɚɬɶ ɧɚ ɬɨ, ɱɬɨ ɨɧɢ ɜɨɡɜɪɚɳɚɸɬ. ȼɨɬ ɧɟ-
ɫɤɨɥɶɤɨ ɩɪɢɦɟɪɨɜ ɩɨɞɯɨɞɹɳɢɯ ɢ ɧɟɩɨɞɯɨɞɹɳɢɯ ɢɦɟɧ ɦɟɬɨɞɨɜ [2]:
ɉɨɞɯɨɞɹɳɢɟ ɇɟɩɨɞɯɨɞɹɳɢɟ
Procedure CutToClipboard procedure Cut
Procedure SetHeight procedure SetH
function GetTextLen function Len
Ɇɟɬɨɞɵ ɦɨɝɭɬ ɪɚɡɦɟɳɚɬɶɫɹ ɜ ɪɚɡɞɟɥɚɯ public, protected ɢɥɢ
private ɨɛɴɹɜɥɟɧɢɹ ɤɨɦɩɨɧɟɧɬɚ. Ɋɟɲɟɧɢɟ ɨ ɬɨɦ, ɝɞɟ ɫɥɟɞɭɟɬ ɪɚɡɦɟɫɬɢɬɶ
ɤɨɧɤɪɟɬɧɵɣ ɦɟɬɨɞ, ɡɚɜɢɫɢɬ ɨɬ ɬɨɝɨ, ɤɚɤ ɨɧ ɛɭɞɟɬ ɢɫɩɨɥɶɡɨɜɚɬɶɫɹ. Ɇɟɬɨɞɵ,
ɞɨɫɬɭɩɧɵɟ ɩɨɥɶɡɨɜɚɬɟɥɸ ɜɨ ɜɪɟɦɹ ɜɵɩɨɥɧɟɧɢɹ, ɞɨɥɠɧɵ ɪɚɡɦɟɳɚɬɶɫɹ ɜ
ɪɚɡɞɟɥɟ public (ɨɛɳɟɞɨɫɬɭɩɧɵɣ). ɋɩɟɰɢɮɢɱɟɫɤɢɟ, ɡɚɜɢɫɹɳɢɟ ɨɬ ɪɟɚɥɢɡɚ-
ɰɢɢ ɦɟɬɨɞɵ ɞɨɥɠɧɵ ɪɚɡɦɟɳɚɬɶɫɹ, ɩɨ ɦɟɧɶɲɟɣ ɦɟɪɟ, ɜ ɪɚɡɞɟɥɟ protected
(ɡɚɳɢɳɟɧɧɵɣ). ȼ ɷɬɨɦ ɫɥɭɱɚɟ ɩɨɥɶɡɨɜɚɬɟɥɶ ɤɨɦɩɨɧɟɧɬɚ ɧɟ ɫɦɨɠɟɬ ɫɥɭɱɚɣ-
ɧɨ ɜɵɩɨɥɧɢɬɶ ɦɟɬɨɞɵ, ɡɚɜɢɫɹɳɢɟ ɨɬ ɪɟɚɥɢɡɚɰɢɢ. Ɇɟɬɨɞɵ, ɤɨɬɨɪɵɟ ɞɨɥɠɧɵ
ɛɵɬɶ ɞɨɫɬɭɩɧɵ ɜ ɩɨɪɨɠɞɟɧɧɵɯ ɤɥɚɫɫɚɯ, ɫɥɟɞɭɟɬ ɪɚɫɩɨɥɚɝɚɬɶ ɜ ɪɚɡɞɟɥɟ
protected.
Ɂɚɦɟɱɚɧɢɟ. Ɇɟɬɨɞɵ, ɨɛɴɹɜɥɟɧɧɵɟ ɭ ɩɪɟɞɤɚ ɫ ɚɬɪɢɛɭɬɚɦɢ virtual,
dynamic ɢɥɢ abstract, ɫɥɟɞɭɟɬ ɩɟɪɟɨɩɪɟɞɟɥɹɬɶ ɫ ɚɬɪɢɛɭɬɨɦ
override.
ȼɫɟ ɤɨɦɩɨɧɟɧɬɵ Delphi ɞɨɥɠɧɵ ɢɦɟɬɶ ɦɟɬɨɞ-ɤɨɧɫɬɪɭɤɬɨɪ, ɢɫɩɨɥɶ-
ɡɭɟɦɵɣ ɞɥɹ ɫɨɡɞɚɧɢɹ ɷɤɡɟɦɩɥɹɪɚ ɤɥɚɫɫɚ ɢ ɢɦɟɸɳɢɣ ɫɥɟɞɭɸɳɢɣ ɜɢɞ:
constructor Create(AOwner : TComponent); override;
16
Страницы
- « первая
- ‹ предыдущая
- …
- 14
- 15
- 16
- 17
- 18
- …
- следующая ›
- последняя »
