Ir para conteúdo
Fórum Script Brasil
  • 0

ScrollBar


Irenko

Pergunta

Algum por favor! Consegui fazer funcionar o scroll conforme codigo abaixo.Agora outro problema, quando vou inserindo os textBox com o (Command1) pega a rotina novamente e quando ultrapassa o Height do picturebox(PicInner), vou e uso o VScrollBar(VBar) para posicionar nos ultimos controles criados, so que quando vou inserir novamente os controles eles são criados bem abaixo dos ultimos. A linha que uso para inserir é:

(pos1 = pos1 + 330) que da um espacamento pequeno entre o (Top) dos TextBox. alguém tem uma ideia para solucionar esse problema?

Tenho o exemplo, pra quem mando?

Option Explicit

Public PosicaoScroll

Private m_NumControls As Integer

Dim Referencia As Integer

Dim pos1 'L As Integer

Dim ID As Long

Dim PosLeft, PosTop, L

Dim Box(0 To 1) As Object

Private Sub Command1_Click()

TextX

End Sub

Private Sub Form_Load()

PosicaoScroll = 0

VBar.Min = 0

VBar.SmallChange = 120

VBar.LargeChange = 480

VBar.Value = 0

Referencia = 1

ID = 0

pos1 = Empty

TextX

End Sub

Private Sub TextX()

Dim ctl As TextBox

If Referencia = 1 Then

PosTop = pos1 + 100

End If

PosLeft = 1

L = L + 1

m_NumControls = 1

Set Box(0) = Controls.Add("VB.TextBox", "A" & L + 1, PicInner)

Box(0).Move PosLeft + 398, PosTop, 495, 315

Box(0).Appearance = 0

Box(0).BorderStyle = 1

Box(0).Tag = "a"

Box(0).Visible = True

Set Box(1) = Controls.Add("VB.TextBox", "B" & L + 1, PicInner)

Box(1).Move PosLeft + 920, PosTop, 600, 315

Box(1).Appearance = 0

Box(1).BorderStyle = 1

Box(1).Tag = "a"

Box(1).Visible = True

pos1 = pos1 + 330

ID = ID + 1

VBar.Max = pos1

End Sub

Private Sub VBar_Change()

Dim x

Dim pos

pos = VBar.Value - PosicaoScroll

PosicaoScroll = VBar.Value

For Each x In PicInner.Container

If x.Tag = "a" Then

If x.Name <> "PicInner" And x.Name <> "Vbar" Then

x.Top = x.Top - pos

End If

End If

Next x

End Sub

Private Sub VBar_Scroll()

Dim x

Dim pos

pos = VBar.Value - PosicaoScroll

PosicaoScroll = VBar.Value

For Each x In PicInner.Container

If x.Tag = "a" Then

If x.Name <> "PicInner" And x.Name <> "VBar" Then

x.Top = x.Top - pos

End If

End If

Next x

End Sub

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      652k
×
×
  • Criar Novo...