MSFlexGrid - Incluindo Colunas em uma determinada posição.
Mais uma vez estamos falando sobre o controle MSFlexGrid . Agora vamos mostrar como incluir uma coluna na grade. O padrão do VB é incluir a coluna no fim da grade a partir da última coluna . Vou mostrar como você pode incluir uma coluna em outra posição.
1- Inicie um novo projeto no VB e no formulário padrão insira os controles conforme o layout a seguir:
2- Insira o código abaixo no evento Click do botão de comando -Incluir Coluna :
Private Sub Command1_Click() Dim titulo As String With MSFlexGrid1 .Cols = .Cols + 1 If optdepois.Value = True Then posicao = posicao + 1 titulo = " Depois " .ColPosition(.Cols - 1) = posicao ElseIf optantes.Value = True Then titulo = " Antes " .ColPosition(.Cols - 1) = posicao End If .Row = 0 .Col = posicao .Text = titulo End With End Sub |
A variação - posição - retém o valor da coluna que o
usuário clicou:
Se a opção para incluir a coluna Depois da seleção estiver ativa basta acrescentar um a variável posição : posicao = posicao + 1 O titulo da coluna é exibido conforme a opção selecionada A posição da coluna é obtida pela propriedade: ColPosition |
3- O codigo do evento Load do formulário define os cabeçalhos das colunas:
Private Sub Form_Load() definecabecalho End Sub |
4- Agora o código da função - defineCabecalho : Ela apenas acrescente nomes ao cabeçalho do grid.
Private Sub definecabecalho() Dim x As Integer With MSFlexGrid1 For x = 0 To .Cols - 1 .Col = x .Row = 0 .Text = "Coluna " & x Next End With End Sub |
Ao processar poderemos ter o seguinte resultado: Selecionando a Coluna 2 e incluindo uma coluna antes e outra depois da seleção.
Simples não é mesmo ! Até a próxima...