Cuando en VB creas una clase, si defines una propiedad normalmente su valor lo guardas en una variable o campo que nombra con el prefijo "mVar", por ejemplo este código VB:
Código:
Private mvarPropiedad As Variant 'Variable o Campo donde se guardará el valor de la propiedad
Public Sub Initialize()
mvarPropiedad = "Valor por Defecto"
End Sub
Public Sub Metodo()
If mvarPropiedad= "XX" Then
...
End If
End Sub
Public Property Let Propiedad(ByVal vData As Variant)
If mvarPropiedad <> vData Then
mvarPropiedad = vData
End If
End Property
Public Property Get Propiedad() As Variant
Propiedad = mvarPropiedad
End Property
Sería muy similar a este código Delphi
Código:
interface
Type
TClase = class(TObject) { Primer concepto faltante de Visual: Herencia TClase hereda de TObject }
private
FPropiedad: string;
function GetPropiedad: string;
procedure SetPropiedad(const Value: string); { Variable o Campo donde se guardará el valor de la propiedad }
public
procedure Metodo;
published
property Propiedad: string read GetPropiedad write SetPropiedad;
end;
implementation
{ TClase }
function TClase.GetPropiedad: string;
begin
Result := FPropiedad;
end;
procedure TClase.Metodo;
begin
if FPropiedad = 'XX' Then
...
end;
procedure TClase.SetPropiedad(const Value: string);
begin
if FPropiedad <> Value then
FPropiedad = Value;
end;
Vale aclarar un par de cosas, en este ejemplo tanto en VB como en Delphi los métodos de lectura y escritura de la propiedad no estan haciendo nada extra, así que se podría evitar el uso de esos, en VB definiendo una Variable Pública en lugar de una propiedad, en Delphi se podría definir una variable pública o una propiedad que acceda directamente a los campos:
Código:
property Propiedad: string read FPropiedad write FPropiedad;
Si estos métodos tuvieran lógica dentro, habría que evaluar en el código donde se llama al campo si llamar a este o a la propiedad para que ejecute esta lógica.
Recuerda que Delphi es un lenguaje orientado a objetos y que case todo es un objeto, este mismo tratamiento podrás utilizarlo para crear tus forms, componentes, tipos de datos...
Saludos!