Pregunta

Delphi 2010

Como crear una carpeta (directorio) editor de propiedades para mi componente?

I fue capaz de crear fácilmente uno para una propiedad FileName usando:

TFileProperty = class(TStringProperty)  
public  
  function GetAttributes: TPropertyAttributes; override;  
  procedure Edit; override;  
end;  

RegisterPropertyEditor(TypeInfo(TFileName),nil, '', TFileProperty);  

Creo que puede tomar un poco más de trabajo, ya que creo que necesito para crear una clase para registrarse, y de alguna manera llamar selDir rutina de API o algo

Gracias por cualquier ayuda que pueden ofrecer

¿Fue útil?

Solución

Creo que tengo algo para el trabajo, a menos que alguien puede llegar a algo mejor

type  
  TFolderName = String;  

  TFolderNameProperty = class(TStringProperty)  
  public  
    function GetAttributes: TPropertyAttributes; override;  
    procedure Edit; override;  
  end;  

function TFolderNameProperty.GetAttributes: TPropertyAttributes;  
begin  
  Result := [paDialog]  
end {GetAttributes}; 

procedure TFolderNameProperty.Edit;  
var  
  Dir: String;  
begin  
  SelectDirectory('Select a directory', '', Dir)  
  SetValue(Dir);  
end {Edit};  

procedure Register;  
begin  
  RegisterPropertyEditor(TypeInfo(TFolderName),nil, '', TFolderNameProperty)  
end;  
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top