Condizioni di notifica
Questo evento viene notificato dall'albero quando l'utente fa dpppio click su di esso, sia con il tasto destro che sinistro che di mezzo.
Utilizzo consigliato
L'evento di OnMouseDoubleClick può essere utilizzato al posto dell'oggetto di attivazione di un nodo per gestire differenti azioni a seconda del modo con cui l'utente interagisce con l'albero.
Argomenti
Button | Indica il bottone del mouse che è stato premuto. Vedi anche la lista valori MouseButtons |
X | Posizione X in pixel rispetto al pannello alla quale è stato premuto il mouse |
Y | Posizione Y in pixel rispetto al pannello alla quale è stato premuto il mouse |
XB | Posizione X in pixel nel browser alla quale è stato premuto il mouse |
YB | Posizione Y in pixel nel browser alla quale è stato premuto il mouse |
Node Hash | Chiave HASH del nodo cliccato (stringa vuota se il click è avvenuto all'esterno di ogni nodo) |
Document | Documento sotteso al nodo cliccato (null se non esiste) |
Cancel | Può essere impostato a True per non eseguire l'azione di default collegata al click, ad esempio l'esecuzione dell'oggetto di attivazione del nodo |
Esempio di codice
NOTA: l'esempio riportato è quello relativo al book in quanto l'uso dell'evento è analogo.
// **************************************************************************
// Evento notificato dal book quando l'utente esegue un doppio click nel book
// **************************************************************************
event Desktop.LibroDesktop.OnMouseDoubleClick(
int Button //
int X //
int Y //
int XB //
int YB //
int BoxID //
inout boolean Cancel //
)
{
// Apro il documento corrispondente all'icona
if Button = Left AND BoxID = LibroDesktop.NuovoReport.Icona.Me()
{
IDDocument d := IDDocument.GetFromDNA(LibroDesktop.DocDNAIcona, ??, ??) // ID Document.Get From DNA (Doc D...
IDForm f := d.Show(Popup)
//
f.Left := XB + 64
f.Top := YB - 32
}
}
// **************************************************************************
// Evento notificato dal book quando l'utente esegue un doppio click nel book
// **************************************************************************
event Desktop.LibroDesktop.OnMouseDoubleClick(
int Button //
int X //
int Y //
int XB //
int YB //
int BoxID //
inout boolean Cancel //
)
{
// Apro il documento corrispondente all'icona
if Button = Left AND BoxID = LibroDesktop.NuovoReport.Icona.Me()
{
IDDocument d := IDDocument.GetFromDNA(LibroDesktop.DocDNAIcona, ??, ??) // ID Document.Get From DNA (Doc D...
IDForm f := d.Show(Popup)
//
f.Left := XB + 64
f.Top := YB - 32
}
}
- Prima della notifica dell'evento OnMouseDoubleClick viene notificato anche l'evento OnMouseClick.
- I parametri XB e YB possono essere utili per aprire un menù contestuale proprio alle coordinate del mouse, tramite la procedura OpenPopupXY.
- Nella procedura di gestione di questo evento NON è possibile leggere i valori relativi al nodo cliccato riferendo i campi della tabella IMDB sottesa all'albero. E' necessario utilizzare i parametri Node Hash o, ancor meglio, Document per conoscere i dettagli del nodo.
Ultima modifica: 25/10/2016 / Validità: da 8.5.3800