... Assinatura do site por 3 anos + Kit MontaRibbons + 3 Livros em PDF + Diversas Revistas (pdf) de brinde, por apenas R$182,00
(
podendo parcelar em até 10 vezes no cartão de crédito)...

Clique aqui e obtenha mais detalhes do nosso kit completo e de como comprar.


Ajuste auto largura do campo - modo folha de dados

Usuário Alcides:

Bom Dia.

Gostaria de saber se é possível que o meu subformulário, no modo folha de dados, ao ser aberto seja sempre ajustado ao tamanho do rótulo, conteúdo do campo ou ainda uma largura fixa,  tipo aquele ajuste conseguido com o duplo clique na borda do campo.

Agradeço.

Suporte:

Alcides, você pode ajustar a largura através da propriedade ColumnWidth. Utilize o laço For Each para percorrer os campos e alterar a largura.  Algo assim:

Dim ctl as control
For each ctl in forms!NomeFormulário.controls
   if TypeOf ctl is Textbox OR TypeOf ctl is Combobox then
      'Largura -2 é auto ajustável
      ctl.columnWidth = -2
      'Ou definindo a largura em centímetros.  Exemplo 3 cm
      'ctl.columnWidth = 3 * 567
   end if
next

Definir a largura para cada coluna,  fica de acordo com a sua criatividade.

Usuário Alcides:

Como ficaria o código se eu precisasse colocar cada coluna com um tamanho específico?

Exemplo:

Coluna1= 1cm
Coluna2= 3cm
Coluna3= 5cm

Dessa forma todas as colunas ficam com 3 cm

Suporte:

Alcides, você pode colocar o tamanho dos campos em uma matriz Split(). Exemplo:

Private Sub Form_Open(Cancel As Integer)
Dim ctl As control
Dim j%, k
Dim strSeq$
'passa o tamanho dos campos para uma matriz
k = Split("1;4;1;2;2", ";")
For Each ctl In Me.Controls
   If TypeOf ctl Is TextBox Or TypeOf ctl Is ComboBox Then
      ctl.ColumnWidth = k(j) * 567
      j = j + 1
   End If
Next
End Sub

Usuário Alcides:

Certíssimo, Avelino.

 


 

 


Não há comentário

Envie seu comentário: