Scopo
Questa funzione permette di sapere se il form è in primo piano.
Sintassi
boolean PrimoPiano = False //
//
PrimoPiano := Form.HasFocus()
//
PrimoPiano := Form.HasFocus()
Valore di ritorno
Ritorna True se il form è in primo piano, altrimenti False.
Esempio di codice
// ******************************
// Called when a form is unloaded
// ******************************
event Ordini.Unload(
inout int Cancel //
boolean Confirm //
)
{
// Se il form è aperto ma non ha il fuoco imposto
// un errore in un panel sottostante
if Ordini.IsOpen() AND NOT(Ordini.HasFocus())
{
Ordini.SetErrorText(Controllare che ...)
}
//
// Se il form ordini è in primo piano e non ha errori
if Ordini.HasFocus() AND NOT(Ordini.HasErrors()) AND NOT(Ordini.IsUpdated())
{
return
}
else // Se il form invece non è in primo piano o ha errori fermo la chiusura
{
Cancel := True
//
// Porto il form in primo piano
this.BringToFront()
}
}
// Called when a form is unloaded
// ******************************
event Ordini.Unload(
inout int Cancel //
boolean Confirm //
)
{
// Se il form è aperto ma non ha il fuoco imposto
// un errore in un panel sottostante
if Ordini.IsOpen() AND NOT(Ordini.HasFocus())
{
Ordini.SetErrorText(Controllare che ...)
}
//
// Se il form ordini è in primo piano e non ha errori
if Ordini.HasFocus() AND NOT(Ordini.HasErrors()) AND NOT(Ordini.IsUpdated())
{
return
}
else // Se il form invece non è in primo piano o ha errori fermo la chiusura
{
Cancel := True
//
// Porto il form in primo piano
this.BringToFront()
}
}
- Per portare una form in primo piano, è possibile usare la procedura BringToFront.
- Quando un'altra form viene portata in primo piano, alla form che era in primo piano viene notificato l'evento di Deactivate, così, ad esempio, può opporsi ad essere messa in secondo piano.
Ultima modifica: 23/03/2021 / Validità: da 6.5.2680
funzione