English
Instant Developer Foundation Documentazione
  • Reference Librerie
  • Oggetti UI
  • Libreria Command Set

Get Commands Count

funzione copia link

Scopo

Ritorna il numero di comandi contenuti nel CommandSet. Questa funzione può essere utile per effettuare cicli su tutti i comandi del CommandSet.

Sintassi

int CmdCount = 0 // Numero di comandi del Command Set
// 
CmdCount := CommandSet.GetCommandsCount()

Valore di ritorno

Viene ritornato un numero intero che rappresenta il numero di oggetti Command presenti all'interno del CommandSet.

Esempio di codice

// *****************************************************************
// Nell'evento di OnOpenPopup mostro un comando per ogni categoria
// trovata sul database, nascondendo gli eventuali comandi rimanenti
// *****************************************************************

event Prodotti.Impostacategoria.OnOpenPopup(
  inout int Direction  // Indicates where to show the popup...
  inout boolean Cancel // When set to TRUE, the popup menu is not shown
)
{
  int Idx = 0 // Indice del comando correntemente in valutazione
  // 
  // Per ogni categoria presente nel sistema imposto un comando

  for each row
  {
    select
      IdcategoriaCategorie := Idcategoria
      NomeCategoriaCategorie := NomeCategoria
    from
      Categorie // Master Table
    // 
    record Categorie
      int Idcategoria      // 
      string NomeCategoria // 
    // 
    Impostacategoria.SetCommandVisible(Idx, True)
    Impostacategoria.SetCommandEnabled(Idx, True)
    // 
    Impostacategoria.SetCommandCode(Idx, ToString(Categorie.Idcategoria))
    Impostacategoria.SetCommandCaption(Idx, ToString(Categorie.NomeCategoria))
    Impostacategoria.SetCommandIcon(Idx, Convert(ToImage(Categoria)))
    // 
    Idx := Idx + ONE
    // 
    // Se il command set è già pieno mi fermo

    if Idx = Impostacategoria.GetCommandsCount()
    {
      break
    }
  }
  // 
  // Se non tutti i comandi sono stati impostati rendo invisibili i rimanenti

  while Idx < Impostacategoria.GetCommandsCount()
  {
    Impostacategoria.SetCommandVisible(Idx, False)
    Impostacategoria.SetCommandEnabled(Idx, False)
    // 
    Idx := Idx + ONE
  }
}
  • La funzione ritorna il numero di comandi totali, eventuali comandi disabilitati o invisibili vengono considerati nel conteggio.
  • In caso di menu a più livelli vengono contati anche gli eventuali oggetti CommandSet contenuti.
  • Uno dei possibili utilizzi è quello di realizzare cicli WHILE sugli oggetti Command contenuti nel CommandSet, utilizzando come condizione un confronto tra una variabile incrementata ad ogni ciclo e il valore di ritorno della funzione.

Ultima modifica: 23/03/2021 / Validità: da 6.5.2680

Hai trovato utile l'articolo?

Grazie per il feedback!

Ti serve altro aiuto?

Consulta il Forum