Scoprite tutte le opzioni di utilizzo delle Azioni standard

Tradotto automaticamente da Deepl

Alcuni sviluppatori ritengono che le azioni automatiche siano per i principianti. Tuttavia, potrebbero essersi persi molte delle potenzialità che abbiamo aggiunto negli ultimi anni. Le azioni standard, come First Record o color?value=redpossono essere assegnate a un pulsante nell’interfaccia utente o tramite programmazione. L’azione può essere assegnata a una voce di menu, a un menu contestuale o invocata con un comando. Un vantaggio è che 4D gestisce automaticamente la disattivazione della voce di menu o del pulsante quando l’azione non è applicabile (ad esempio, se non c’è un record successivo).

E a partire da 4D v16 R3, l’elenco delle azioni standard si sta ampliando: sono state aggiunte oltre 100 nuove azioni standard per 4D Write Pro e Styled Text, che consentono di costruire, ad esempio, una barra degli strumenti senza scrivere una riga di codice!

In sintesi, è possibile utilizzare le azioni standard in 3 modi diversi:

  • Associare un’azione standard a un oggetto: in fase di progettazione (utilizzando l’elenco delle proprietà) o tramite programmazione.
  • Associare un’azione standard a una voce di menu: in fase di progettazione (utilizzando la casella degli strumenti) o tramite programmazione
  • Utilizzate i nuovi INVOKE ACTION e Get action info comandi

Associare un’azione standard a un oggetto

In fase di progettazione

Con l’elenco delle proprietà è possibile associare un’azione standard a un oggetto del modulo attivo. In questo esempio, l’azione standard Elimina record è associata a un pulsante.

Delete Record action in Property List

Per maggiori dettagli, consultare questo articolo della documentazione.

Per programmazione

Durante l’esecuzione dell’applicazione, è possibile associare dinamicamente, per il processo corrente, un’azione standard a un oggetto tramite programmazione. In questo modo, si sovrascrive l’azione standard definita dall’elenco di proprietà.

Ad esempio, si desidera associare l’azione Delete Record azione standard a un pulsante “btnCancella”:

OBJECT SET ACTION(*; "btnDelete";ak delete record)o se si utilizza il valore invece della costante:

OBJECT SET ACTION(*; "btnDelete"; "deleteRecord")

E se si usa il valore invece della costante, si può anche passare un parametro con l’azione. In questo esempio, si applica il colore magenta a un testo selezionato.

OBJECT SET ACTION(*; "btnDelete"; "color?value=magenta")

Per maggiori dettagli, consultare la documentazione di questi comandi:

Associare un’azione standard a una voce di menu

In fase di progettazione

È possibile assegnare un’azione standard a una voce di menu utilizzando l’editor di menu. Ad esempio, per aggiungere una voce di menu per aprire il Centro di manutenzione e sicurezza 4D, è sufficiente selezionare l’azione msc come azione standard associata nel menu a comparsa:

blank

Quando si esegue l’applicazione, viene visualizzato il menu:

blank

È possibile creare un sottomenu con un’azione standard. Ad esempio, per aggiungere un sottomenu per applicare lo stile del carattere (come Grassetto, Corsivo…), è sufficiente selezionare l’azione fontStyle come azione standard associata nel menu a comparsa:

Create a font style menu with standard automatic action

Quando si esegue l’applicazione, viene visualizzato il menu:

Menu fontStyle with standard automatic action

Per ulteriori dettagli, consultare questo articolo della documentazione.

Per programmazione

È anche possibile passare un’azione standard al comando SET MENU ITEM PROPERTY . Da 4D v16 R3, se al comando APPEND MENU ITEM si passa la costante ak standard action title invece di un nome di titolo, 4D utilizza il nome dell’azione localizzata.

Ad esempio, in un menu a comparsa per aggiungere una voce di menu che consenta di andare al primo, all’ultimo o al prossimo record, si scrive il seguente codice:

  • Nel metodo Form:

Case of
: (Form event=On Load) := ( ; ) ( ;-1; ; ) ( ; ) ( ;-1; ; ) ( ; ) ( ;-1; ; ) : ( = ) ( )
// create menu
menuCreate menu
//insert first record menu item
APPEND MENU ITEMmenuak standard action title
SET MENU ITEM PROPERTYmenuAssociated standard actionak first record
//insert last record menu item
APPEND MENU ITEMmenuak standard action title
SET MENU ITEM PROPERTYmenuAssociated standard actionak last record
//insert next record menu item
APPEND MENU ITEMmenuak standard action title
SET MENU ITEM PROPERTYmenuAssociated standard actionak next record
Form eventOn Unload
// release menu
RELEASE MENUmenu
End case

  • Nel metodo del pulsante che visualizza il menu a comparsa:

$val:=Dynamic pop up menu(menu)

Quindi, quando si esegue l’applicazione in una lingua diversa, il menu viene visualizzato:

blank

Per ulteriori dettagli, consultare la documentazione relativa a questi comandi:

INVOKE ACTION comando

Il comando INVOKE ACTION aggiunto in 4D v16 R3, attiva l’azione standard definita dal parametro azione, opzionalmente nel contesto. target contesto. Per sapere se l’azione standard è applicabile e valida nel contesto corrente, è possibile utilizzare il nuovo comando Get action info comando.

La sintassi è:

INVOKE ACTION ( action {; target} )

Ad esempio, per modificare l’apertura del MSC, si può scrivere:

C_OBJECT($actionInfo)
// Check if this standard action is available and valid in this current context
$actionInfo :=Get action info(ak paste;ak current form)
If (OB Get($actionInfo; "enabled")
// This standard action is enabled
INVOKE ACTION (ak paste;ak current form)
Else
ALERT ("Questa azione è impossibile. La clipboard è vuota.")
End if

Per maggiori dettagli, leggete la documentazione di questi comandi:

Vanessa Talbot
- Product Owner - Vanessa Talbot è entrata a far parte del team di 4D Program nel giugno 2014. In qualità di Product Owner, è incaricata di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente. Ha lavorato sulla maggior parte delle nuove funzionalità di multi-threading preemptive e anche su un argomento molto complesso: la nuova architettura per le applicazioni con motore. Vanessa si è laureata presso Telecom Saint-Etienne. Ha iniziato la sua carriera presso il Criminal Research Institute come sviluppatrice per il dipartimento audiovisivo. Ha lavorato anche nei settori dei media e della medicina come esperta di supporto tecnico, produzione e documentazione di nuove funzionalità.