Complete Class
Bom dia, pessoal. Alguém também está com problemas no Berlin com o Complete Class?
Criei uma unit de testes:
unit Unit2;
interface
type
TUsuario = class
FNome: string;
end;
implementation
end.
No entanto, ao usar o Complete Class (shift + ctrl + c) ou mesmo com o botão direito do mouse nada acontece. Não completa a classe...
Criei uma unit de testes:
unit Unit2;
interface
type
TUsuario = class
FNome: string;
end;
implementation
end.
No entanto, ao usar o Complete Class (shift + ctrl + c) ou mesmo com o botão direito do mouse nada acontece. Não completa a classe...
Carlos Clara
Curtidas 0
Respostas
Natanael Ferreira
04/08/2017
Creio que o Complete Class funciona para criação automática de Procedures.
Por exemplo, no seu código crie um procedimento e dê um Ctrl+Alt+C:
O Complete Class vai funcionar criando o código abaixo de implementation:
Veja a documentação oficial no link abaixo:
http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Using_Class_Completion
Por exemplo, no seu código crie um procedimento e dê um Ctrl+Alt+C:
type
TUsuario = class
FNome: string;
procedure DoSomething; // Acrescentei esta linha
end;O Complete Class vai funcionar criando o código abaixo de implementation:
{ TUsuario }
procedure TUsuario.DoSomething;
begin
end;Veja a documentação oficial no link abaixo:
http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Using_Class_Completion
GOSTEI 0
Rafael Bosco
04/08/2017
O complete class só irá executar em métodos e funções e propertys adicionadas a classe, no seu exemplo você colocou apenas uma variavél aleatória e sem definir a segurança dela, faça assim e aperta SHIFT + CTRL + C para ver o que acontece:
O Delphi irá criar a função, e o Write, Get, e Set da property declarada.
TUsuario = class
private
function ReturnSomething: Boolean;
public
property Nome: String;
end;
O Delphi irá criar a função, e o Write, Get, e Set da property declarada.
GOSTEI 0
Carlos Clara
04/08/2017
Descobri meu erro: estava faltando o property:
unit Unit2;
interface
type
TUsuario = class
property Nome: string;
property Login: string;
property Senha: string;
end;
implementation
end.
Ao digitar SHIFT + CTRL + C agora funciona: Completa a classe e fica:
unit Unit2;
interface
type
TUsuario = class
private
FSenha: string;
FLogin: string;
FNome: string;
procedure SetLogin(const Value: string);
procedure SetNome(const Value: string);
procedure SetSenha(const Value: string);
published
property Nome: string read FNome write SetNome;
property Login: string read FLogin write SetLogin;
property Senha: string read FSenha write SetSenha;
end;
implementation
{ TUsuario }
procedure TUsuario.SetLogin(const Value: string);
begin
FLogin := Value;
end;
procedure TUsuario.SetNome(const Value: string);
begin
FNome := Value;
end;
procedure TUsuario.SetSenha(const Value: string);
begin
FSenha := Value;
end;
end.
Valeu, galera....
unit Unit2;
interface
type
TUsuario = class
property Nome: string;
property Login: string;
property Senha: string;
end;
implementation
end.
Ao digitar SHIFT + CTRL + C agora funciona: Completa a classe e fica:
unit Unit2;
interface
type
TUsuario = class
private
FSenha: string;
FLogin: string;
FNome: string;
procedure SetLogin(const Value: string);
procedure SetNome(const Value: string);
procedure SetSenha(const Value: string);
published
property Nome: string read FNome write SetNome;
property Login: string read FLogin write SetLogin;
property Senha: string read FSenha write SetSenha;
end;
implementation
{ TUsuario }
procedure TUsuario.SetLogin(const Value: string);
begin
FLogin := Value;
end;
procedure TUsuario.SetNome(const Value: string);
begin
FNome := Value;
end;
procedure TUsuario.SetSenha(const Value: string);
begin
FSenha := Value;
end;
end.
Valeu, galera....
GOSTEI 0