Redimensionar formulário no microsoft Access alterando Detalhes.Altura
-
21-12-2019 - |
Pergunta
Eu quero que o usuário seja capaz de alterar a altura do formulário na Vista de Formulário clicando no botão:
Private Sub btnChangeHeight_Click()
booTall = Not booTall
If booTall Then
lngHeight = 12400 ' (twips)
Else
lngHeight = 1200
End If
Me.Detail.Height = lngHeight
Me.Repaint
Debug.Print Me.Detail.Height
End Sub
Altera a altura -- Debug.Print
diz que sim, e uma barra de rolagem vertical aparece quando booTall
é True
. Mas a forma não muda sua dimensão vertical da tela.
Eu também tentei, sem sucesso (certificando-se de meu botão estava no cabeçalho do Formulário):
Me.Detail.Visible = booTall
A solução parece depender de propriedades para o Formulário e seção de Detalhe do Formulário: Redimensionável, Auto Altura, talvez Pode Crescer, etc.Mas eu manipuladas com aqueles e nada funciona.
Eu entendo a sobreposição de controles e outras coisas que podem impedir ajustes de altura, para que eu tenha reduzido o formulário para um mínimo de layout.Estou usando a versão do Access 2007/2010.
Algumas informações adicionais: O que eu realmente estou trabalhando direção é de dois subformulários, (A) acima e (B) abaixo, o que pode, independentemente de ser recolhido fora de vista ou expandido.Esta é uma decisão tomada de forma, com um MONTE de dados.Eu pensei que se eu desabou na altura do (A) ou (B), o CanShrink
propriedade de Detail
poderia causar a forma geral dimensão para a mudança.Na verdade, eu acho que eu fiz isso há alguns anos usando o Access 2003.Como para a utilização de Maximizar ...estamos configurando desta forma, re-utilizável, de múltiplas instâncias pode abrir.
Solução
"...alterar a altura do formulário na Vista de Formulário clicando em um botão de"
Utilize o formulário .Move
método para alterar o tamanho do formulário.Este exemplo alterna o meu formulário de altura entre 4044 e 8000 twips.
Private Sub btnChangeHeight_Click()
Dim lngHeight As Long
If Me.WindowHeight = 4044 Then
lngHeight = 8000
Else
lngHeight = 4044
End If
Me.Move Me.WindowLeft, Height:=lngHeight
End Sub
Outras dicas
Eu tive um problema semelhante e descobriu que, mesmo que eu escondi os campos (controles) eu não quero ver o Detalhe altura não iria reduzir o suficiente.Eu encontrei quando eu me movia os controles eu queria esconder (de modo conjunto de ambos .E visível .Top propriedades), em seguida, Detalhe.Altura reduziria o que eu queria.É como se o mesmo Acesso oculto recusou-se a ignorar os controles ocultos