Irenko
|
BELO HORIZONTE MG - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 11/04/2008 13:10 hs
Por favor analisem o codigo abaixo; o documento (0082) tem 09 items, com a rotina abaixo estou conseguindo carregar somente o 1º item no label em tempo de execução. Onde posso estar errando? Isso é em VBA.
Private Sub UserForm_Initialize() NrLista = "0082" ConexãoGeral Dim Sql As String
Dim Cont1, Cont2, PosLeft, PosTop
For Each MeuCont In FrmMostra.Frame1.Controls MeuCont.Visible = False Next
Sql = "SELECT Desc,Quant,LM FROM Movimento WHERE LM Like '%" & NrLista & "%'ORDER BY ID"
Set Tabela_LM = Banco1.Execute(Sql) If Not Tabela_LM.EOF Then 'And Tabela_LM.BOF
PosTop = 1 PosLeft = 1
For Cont2 = 0 To 8
Set Mycmd = Frame1.Controls.Add("Forms.label.1", "lb" & Cont2) Mycmd.Name = "lb" & Cont2 Mycmd.Left = PosLeft Mycmd.Top = PosTop If Cont2 = 0 Then Mycmd.Width = 31.7 Mycmd.TextAlign = 2 Mycmd.Caption = Tabela_LM!Quant ElseIf Cont2 = 1 Then Mycmd.Width = 40 Mycmd.TextAlign = 2 ElseIf Cont2 = 2 Then Mycmd.Width = 32.9 ElseIf Cont2 = 3 Then Mycmd.Width = 241 Mycmd.Caption = Tabela_LM!Desc 'Mycmd.Width = 240 ElseIf Cont2 = 4 Then Mycmd.Width = 48 ElseIf Cont2 = 5 Then Mycmd.Width = 52 ElseIf Cont2 = 6 Then Mycmd.Width = 48 ElseIf Cont2 = 7 Then Mycmd.Width = 33.8 ElseIf Cont2 = 8 Then Mycmd.Width = 33.9 End If
Mycmd.Height = 15 Mycmd.BorderStyle = 1 Mycmd.BorderColor = RGB(204, 204, 204)
Mycmd.BackColor = RGB(255, 255, 255) Mycmd.ForeColor = RGB(0, 0, 0) PosLeft = PosLeft + Mycmd.Width
Next Tabela_LM.MoveNext
End If Me.Frame1.ScrollHeight = 1000
End Sub
|
|
|
|
Perci
|
MATÃO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 11/04/2008 13:39 hs
Por acaso já tentou inverter a ordem dessas linhas: Tabela_LM.MoveNext Next
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 11/04/2008 14:28 hs
O que o exemplo acima faz, carrega uma lista na label? Olha não tenho certeza, mas acho que estas linhas estão se sobrepondo, então acredito que somente a ultima linha esteja aparecendo não seria isto, pois a label não possui a propriedade multiline como o textbox, se for isto você deve proceder de outra forma.
|
|
|
Irenko
|
BELO HORIZONTE MG - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 11/04/2008 14:32 hs
mudei a posição do Tabela_LM.MoveNext e continua a mesma coisa.
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 11/04/2008 17:10 hs
Pelo que entendi do código ele faz o seguinte, insere dentro de um frama varios objetos label, é isso. porque se for isso pra você insrir um novo label no vb isso é feito de outra forma.
|
|
|
Irenko
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 12/04/2008 07:41 hs
Por favor mostre-me como.
|
|
|