Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: Nicola - Novembre 18, 2016, 11:18:27 am

Titolo: Input Box (Risolto)
Inserito da: Nicola - Novembre 18, 2016, 11:18:27 am
E' possibile variare la posizione, la lunghezza di Inputbox?
Se si come?
Grazie
Titolo: Re:Input Box
Inserito da: nomorelogic - Novembre 18, 2016, 11:25:46 am
Quì http://wiki.lazarus.freepascal.org/Dialog_Examples#Constants_and_Types_used_in_message_dialogs (http://wiki.lazarus.freepascal.org/Dialog_Examples#Constants_and_Types_used_in_message_dialogs)
ci sono le costanti che si possono usare per i dialog ma non c'è nulla per posizione e dimensioni.

In questi casi penso ti convenga fare una unit con una tua dialog da usare a tuo piacimento.
Titolo: Re:Input Box
Inserito da: xinyiman - Novembre 18, 2016, 11:29:21 am
Condivido il pensiero di nomorelogic, alla fine ci metti meno a fartela tu che a cercare le voci che ti servono (che tra l'altro non penso esistano)
Titolo: Re:Input Box
Inserito da: Nicola - Novembre 18, 2016, 11:34:43 am
Cioè mi dite di creare una form che agisca in modo simile ad esempio alla input box, con la possibilità però di definire a
runtime i parametri che desidero?
Titolo: Re:Input Box
Inserito da: Stilgar - Novembre 18, 2016, 11:42:47 am
Ciao.
La questione è che input box è una fuzione generica.
Ti allego l'implementazione così vedi come è stata fatta quella originale ;)

Ogni tanto buttare l'occhio sulle implementazioni è istruttivo.
Si impara molto :)

Stilgar
Titolo: Re:Input Box
Inserito da: nomorelogic - Novembre 18, 2016, 03:14:54 pm
Cioè mi dite di creare una form che agisca in modo simile ad esempio alla input box, con la possibilità però di definire a
runtime i parametri che desidero?

si l'idea è questa

nella sezione interface della unit puoi mettere una funzione (che restituisce il risultato di ShowModal) che ha come parametri di ingresso anche le coordinate e le dimensioni del form



la unit che ha segnalato Stilgar ti può essere sicuramente utile
Titolo: Re:Input Box
Inserito da: Nicola - Novembre 18, 2016, 03:30:48 pm
Vediamo se ho capito:
InputBox, richiama InputQuery che al suo interno ha questi parametri
Codice: [Seleziona]
FForm.Width:= 600;
  FForm.Height:= 400;
  FForm.BorderStyle:= bsDialog;
  FForm.Position:= poScreenCenter;
  FForm.Caption:= ACaption;
  FForm.FOnCloseEvent:= ACloseEvent;
se io creo una InputBoxMy(ad esempio) che mi richiama una InputQueryMy, con i parametri che voglio dovrei ottenere quanto desidero. Ma per modificare messagedialogs.inc come procedo? Semplicemente come fosse una qualsiasi altra unit?
Titolo: Re:Input Box
Inserito da: Stilgar - Novembre 18, 2016, 03:38:23 pm
Pian e ben ... Ocio.
Non è una buona pratica cambiare le cose del compilatore/ide.
Fatti la tua unit sulla falsa riga :)

Stilgar
Titolo: Re:Input Box
Inserito da: Nicola - Novembre 18, 2016, 03:40:18 pm
Recepito! E non mandarme in m...a  ;D ;D
Titolo: Re:Input Box
Inserito da: Stilgar - Novembre 18, 2016, 04:01:23 pm
Dai ... in fondo sarebbe un augurio :)
Titolo: Re:Input Box
Inserito da: Nicola - Novembre 18, 2016, 04:07:11 pm
 :P
Titolo: Re:Input Box
Inserito da: nomorelogic - Novembre 18, 2016, 04:21:56 pm
Dai ... in fondo sarebbe un augurio :)

e che augurio! :D