Scopo
Usando questa procedura è possibile muovere il cursore nel campo. Se il campo non è presente nel video a causa della posizione delle barre di scorrimento, la videata verrà riposizionata in modo da rendere visibile il campo.
Sintassi
Pannello.Campo.SetFocus()
Argomenti
| Forzato | Introdotto a partire dalla versione 9.0.3940 di Instant Developer. E' un parametro opzionale booleano il cui valore predefinito è False. Se non viene specificato il sistema porta il cursore sul primo campo sul quale è stato chiamato il metodo SetFocus all'interno di ogni richiesta del client. Se impostato a True il sistema porta il cursore sull'ultimo campo sul quale è stato chiamato il metodo SetFocus all'interno di ogni richiesta del client. |
Esempio di codice
// ***********************************
// Fired when the panel changes status
// ***********************************
event Ordini.Ordini.OnChangeStatus(
int OldStatus // Stato precedente del pannello
)
{
// Quando ritorno in QBE
if Ordini.Status() = QBE AND OldStatus = DATA
{
// Mi posiziono sulla prima pagina
Ordini.Page := Ordini.DatiOrdine.Me()
Ordini.IdOrdine.SetFocus()
}
}
// Fired when the panel changes status
// ***********************************
event Ordini.Ordini.OnChangeStatus(
int OldStatus // Stato precedente del pannello
)
{
// Quando ritorno in QBE
if Ordini.Status() = QBE AND OldStatus = DATA
{
// Mi posiziono sulla prima pagina
Ordini.Page := Ordini.DatiOrdine.Me()
Ordini.IdOrdine.SetFocus()
}
}
- Il framework gestisce in autonomia il posizionamento del cursore, tentando di mantenere il fuoco nel campo che lo aveva o almeno nel suo pannello.
- Se un campo entra in stato di errore, il framework mette il cursore in quel campo, se è visibile a video.
- Se si usa la procedura SetFocus tuttavia, essa è prioritaria rispetto agli spostamenti del cursore fatti dal framework quindi è sempre possibile posizionare il cursore nel punto desiderato.
Ultima modifica: 25/10/2016 / Validità: da 6.5.2680
procedura