cMFDbCJGrifPromptList

Pacote

A classe cMFDbCJGridPromptList está definida no pacote cMFDbCJGridPromptList.pkg.

Hierarquia

A classe cMFDbCJGridPromptList é uma subclasse da classe cDbCJGridPromptList do DataFlex e herda todas as propriedades, eventos e métodos existentes nesta classe.

Para que serve

A classe cMFDbCJGridPromptList é uma subclasse da classe cDbCJGridPromptList e foi especializada com alguns recursos adicionais:

  • As cores da linha, célula, texto da linha e texto da célula são configuradas automaticamente de acordo com as cores definidas nas preferências do usuário.
  • Ao pressionar Shift+Tab na primeira célula, o foco será “jogado” no objeto anterior, em vez de continuar dentro da dbGrid.
  • Ao pressionar Tab na última coluna, o foco será “jogado” no próximo objeto, em vez de ir para a próxima linha.
  • Um novo evento OnSetDisplayMetrics foi adicionado para que se possa controlar a cor da linha inteira em um único evento.
  • Algumas propriedades tiveram seus valores configurados de forma diferente da classe ancestral:
    • Set pbRestoreLayout to True
    • Set psLayoutSection to (Name(Self)) (essa propriedade só será configurada se pbRestoreLayout for True)

Eventos

Confira abaixo a documentação dos eventos da classe cMFDbCJGridPromptList:

OnSetDisplayMetrics

Tipo

Procedure

Parâmetros

  • Handle hoGridItemMetrics: é um Handle de um objeto cComReportRecordItemMetrics. Manipule as propriedades deste objeto para modificar os atributos de exibição da linha que está sendo “pintada”.
  • Integer iRow: é número da linha que está sendo pintada.

Para que serve

A classe cDbCJGridColumn possui um evento com este mesmo nome, que permite configurar a cor de uma única célula que está sendo pintada. Em situações onde queremos pintar a linha inteira dependendo do valor de uma das colunas, éramos obrigados a definir este evento em cada uma das colunas. Com este evento da classe cMFDbCJGridPromptList, temos um local centralizado para fazer isso, sem a necessidade de definir o evento em cada uma das colunas da Grid. Exemplo:

Procedure OnSetDisplayMetrics Handle hoGridItemMetrics Integer iRow
    String sTipo
    // Obtendo o valor da coluna oLOGEVENT_Cd_Tipo, que irá definir a cor da linha inteira
    Get RowValue of oLOGEVENT_Cd_Tipo iRow to sTipo

Case Begin
Case (sTipo = “Informação”)
Set ComBackColor of hoGridItemMetrics to 16757683
Case Break
Case (sTipo = “Alerta”)
Set ComBackColor of hoGridItemMetrics to 9240575
Case Break
Case (sTipo = “Erro”)
Set ComBackColor of hoGridItemMetrics to 4227327
Case Break
Case End
End_Procedure