Adicionar uma nova coluna em um grid existente

  1. Adicione no uses do script a unit: CxGridCol;

  2. Localize a View onde se deseja criar a nova coluna (atentar que o grid pode possuir mais de uma view);

  3. Utilize o método TcxGridColuna.Create(View: TcxGridDBTableView; NomeColuna, Tipo : String; Tamanho : integer = 0; CamposChave : String = ''). A chamada a este método irá retornar um objeto do tipo TcxGridColuna. Este método espera os seguintes parâmetros:

    1. View: A view onde se deseja criar a nova coluna;

    2. NomeColuna: O nome da nova coluna. Este nome será utilizado como título da coluna e aceita espaços e caracteres especiais;

    3. Tipo: Indica o tipo de dados que será aceito pela coluna. Os valores possíveis são:

      1. Texto: aceita valores alfanuméricos;

      2. Número: aceita valores númericos com ponto flutuante e o número de casas depois do ponto pode ser definido através da propriedade Decimais. Ex.:

        Uses CxGridCol; var Coluna : TcxGridColuna; begin Coluna := TcxGridColuna.Create(ViewFormaPagamento, 'Campo do tipo Número', 'Numero'); Coluna.Decimais := 2; end;
      3. Inteiro: aceita valores inteiros;

      4. Data: aceita datas;

      5. Hora: aceita horas;

      6. DataHora: aceita data e hora;

      7. Combo: este campo permite que o usuário escolha entre múltiplas opções. O valores da lista podem ser definidos através da propriedade Itens. Ex.:

        Uses CxGridCol; var Coluna : TcxGridColuna; begin Coluna := TcxGridColuna.Create(ViewFormaPagamento, 'Campo do tipo Combo', 'Combo'); Coluna.Separador := ';'; Coluna.Itens := 'Item um;Item dois'; // VALORESFIXOS: Indica que o usário não poderá digitar valores, // apenas escolher os que já existem na lista Coluna.ValoresFixos := True; end;
      8. EditButton: este campo é a combinação de um campo texto com um botão que pode ser utilizado para realizar interações com o usuário. O comportamento do botão pode ser definido associando-se o método desejado na propriedade EventoClicouBotao. Ex.:

        Uses CxGridCol, Dialogs; var Coluna : TcxGridColuna; procedure MeuEventoClicouBotao(AButtonIndex : String; var Retorno : String); begin if MessageDlg('Deseja Retornar data e hora?', mtWarning, SetOf([mbYes, mbNo]), 0) = mrYes then Retorno := FormatDateTime('hh:nn:ss:zzzz', Now); end; begin Coluna := TcxGridColuna.Create(ViewFormaPagamento, 'Campo do tipo EidtButton', 'EditButton'); Coluna.EventoClicouBotao := 'MeuEventoClicouBotao'; end;
    4. Tamanho (opcional): este parâmetro é válido apenas para campos do tipo Texto e irá definir o tamanho máximo de caracteres que o campo irá comportar. O tamanho máximo permitido é de 5000 caracteres;

    5. CamposChave (opcional): Alguns grids no sistema não possuem a definição do campo chave. Sem essa informação não é possível fazer o tratamento dos valores digitados pelo usuário. Nesses casos, é possível informar quais campos serão utilizados como chave. Lembrando que estes campos precisam ser únicos.