Ho creato una funzione che nel momento in cui digito in una casella edit una lettera mi vengono mostrate
una serie di stringhe corrispondenti, mano a mano che digito i caratteri la ricerca si restringe (quello che
normalmente succede ad esempio nella barra di un motore di ricerca qualsiasi);
volevo utilizzare questa possibilità anche con il comando input box (in quanto la casella mi da problemi
in fase di controllo della stessa --considerate che sono un principiante--); il problema è che input box attende
la fine della digitazione del testo per poi poter operare, non ho quindi il controllo carattere per carattere.
Rileggendo questo topic http://www.lazaruspascal.it/index.php?topic=1809.msg10511#msg10511 ho provato a crearmi un input box personalizzato ma mi son bloccato subito
in quanto mi appare questo messaggio: "
Compila il progetto, Destinazione: project1.exe: Codice di uscita 1, Errori: 4
unit2.pas(21,13) Error: Identifier not found "LCLIntf"
unit2.pas(21,44) Error: Identifier not found "ConvertLineEndings"
unit2.pas(28,3) Error: Wrong number of parameters specified for call to "InputQueryMy"
unit2.pas(11,12) Error: Found declaration: InputQueryMy(const AnsiString;const AnsiString;Boolean;var AnsiString):Boolean;"
questo il codice:
unit Unit2;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils,FileUtil, Forms, Controls, Graphics, Dialogs;
function InputBoxMy(const ACaption, APrompt, ADefault : String) : String;
function InputQueryMy(const ACaption, APrompt : String; MaskInput : Boolean;
var Value : String) : Boolean;
implementation
function InputQuery(const ACaption, APrompt : String; MaskInput : Boolean;
var Value : String) : Boolean;
begin
Result := LCLIntf.RequestInput(ACaption, ConvertLineEndings(APrompt),
MaskInput, Value);
end;
function InputBoxMy(const ACaption, APrompt, ADefault : String) : String;
begin
Result := ADefault;
InputQueryMy(ACaption, APrompt, Result);
end;
end.
troppo complesso probabilmente per me metter mano ai sorgenti; ci sono alternative?