Duplo click Listvie...
 
Notifications
Clear all

Duplo click Listview

14 Posts
2 Usuários
0 Reactions
4,676 Visualizações
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Amigos bom dia,

Neste projeto em anexo, no userform1 que e o multipaginas que abre automaticamente, tenho varias listview, na aba 2 Corridas Convenio, no listview2, adicionei a funçao duplo click, que deveria abrir o formulario de referencia mas nao o faz.
Alguem poderia ver por favor o que errei na função? ou se nao se adapta esta funcao desta forma?

No aguarde de soluções desde ja agradeço.

Fabio Pradella

 
Postado : 27/04/2012 8:49 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!
Espero sinceramente, que alguém possa te ajudar, como já foi falado antes, você deveria postar somente o arquivo em questão de forma direta, sem muitos formulários etc...

Caso os outros colaboradores não poder te responder poste um anexo com somente um arquivo e apenas com um form onde está tua dúvida!!

Att

 
Postado : 01/05/2012 8:43 am
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Senhores boa tarde, estou anexando o projeto resumido a este caso, se alguem puder me dar uma ideia...

Um abraço,

Fabio Pradella

 
Postado : 15/05/2012 1:05 pm
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Private Sub listview2_DblClick()

Dim linha, Index
Dim i As Integer
Dim oList As Object
Dim indiceRegistro As Long

On Error Resume Next
Set oList = ListView2.SelectedItem
If oList Is Nothing Then 'Exit Sub
MsgBox "É preciso selecionar um item válido na lista"

Else
indiceRegistro = frmCadastroServiçosConvenio.ProcuraIndiceRegistroPodId(ListView2.ListItems.Item(ListView2.SelectedItem.Index))
If indiceRegistro <> -1 Then
Call frmCadastroServiçosConvenio.CarregaRegistroPorIndice(indiceRegistro)
End If
Unload Me
End If

End Sub

 
Postado : 15/05/2012 1:14 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Private Sub listview2_DblClick()

Dim linha, Index
Dim i As Integer
Dim oList As Object
Dim indiceRegistro As Long

On Error Resume Next
Set oList = ListView2.SelectedItem
If oList Is Nothing Then 'Exit Sub
MsgBox "É preciso selecionar um item válido na lista"

Else
indiceRegistro = frmCadastroServiçosConvenio.ProcuraIndiceRegistroPodId(ListView2.ListItems.Item(ListView2.SelectedItem.Index))
If indiceRegistro <> -1 Then
Call frmCadastroServiçosConvenio.CarregaRegistroPorIndice(indiceRegistro)
End If
Unload Me
End If

End Sub

Fabio, se entendi corretamente, depois de todas as operações devemos utilizar a chamada para abrir o Formulário, e nesta sua rotina não tem, então acrescente após o último "End If" antes de End Sub somente a linha que está em destaque:

.........
............
End If
Unload Me
End If

frmCadastroServiçosConvenio.Show

End Sub
[]s

 
Postado : 16/05/2012 6:14 pm
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Grande Mestre Mauro, achei que tinha abandonado este pupilo, hahahaha, como estao as coisas tudo bem?
Estou com problemas para abrir o programa aqui em casa, amanha no trabalho faço o que vc explicou e te dou um feedback.

Obrigado Mestre Mauro

 
Postado : 16/05/2012 6:35 pm
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Grande Mestre Mauro,

Simples assim, ja esta atualizado.

Mauro, aproveitando a tua atenção, ja ativei tudo que é coisa dentro das rotinas para fazer o numero do primeiro comando aquele que te da o numero de registro dos forms ficar visivel enquanto registro os dados, mas nao consegui, ele so aparece depois de registrar, abrindo o form em modo alterar ou excluir, alguma luz???

Um grande abraço Mauro e obrigado mais uma vez

 
Postado : 17/05/2012 6:43 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Fabio, sinceramente não entendi, poderia detalhar melhor :
"fazer o numero do primeiro comando aquele que te da o numero de registro dos forms ficar visivel enquanto registro os dados"

[]s

 
Postado : 17/05/2012 5:31 pm
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Txtcodigocliente Mauro, desculpe o mal jeito para escrever, aquele que vai gerando o id automaticamente, entao, e possivel que ele seja visivel sempre, tanto no alterar, excluir e principalmente no Novo registro?

 
Postado : 17/05/2012 5:42 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Txtcodigocliente Mauro, desculpe o mal jeito para escrever, aquele que vai gerando o id automaticamente, entao, e possivel que ele seja visivel sempre, tanto no alterar, excluir e principalmente no Novo registro?

Fabio, ainda fiquei com uma certa duvida, se entendi corretamente você quer que quando clicar no Option "Novo Registro" o controle "TxtCodigoCliente", mostre qual o proximo numero, se for isto, troque a rotina do Option "optNovo" pela a abaixo :

Private Sub optNovo_Click()
    Dim proximoId As Long
    
    Call LimpaControles
    
    proximoId = PegaProximoId

    TxtCodigoCliente.Visible = True
    TxtCodigoCliente = proximoId
    
    If TxtCodigoCliente.Text <> vbNullString And TxtCodigoCliente.Text <> "" Then
    End If
    
    TxtData = Format(Date, "dd/mm/yyyy")
    TxtHora = Format(Time, "hh:mm")
    
    
    Call HabilitaControles
    Call DesabilitaBotoesAlteracao
    'dá o foco ao primeiro controle de dados
    CmbMotoqueiro.SetFocus
End Sub

Quanto a "que ele seja visivel sempre, tanto no alterar, excluir", este não entendi.

[]s

 
Postado : 17/05/2012 6:14 pm
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Mauro , e isso mesmo, alterei as rotinas de ativar, desativar abilitar e desabilitar, mas nao tinha pensado na rotina optnovo, matou a xarada, hehehe.

Obrigado mestre Mauro.

 
Postado : 17/05/2012 6:38 pm
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Boa Noite Senhores,

Fazendo alguns testes com atençao, percebi que o duplo click no listview com codigos identicos em tres casos ( tres listview ), em um deles tudo certo,(listview2 abre o form carregando o registro daquela linha clicada, mas nos outros dois (listview1 e listview3) ele em vez de carregar a linha clicada, carrega sempre a ultima linha.

Private Sub ListView1_DblClick()

Dim linha, Index
Dim i As Integer
Dim oList As Object
Dim indiceRegistro As Long

On Error Resume Next
Set oList = ListView1.SelectedItem
If oList Is Nothing Then 'Exit Sub
MsgBox "É preciso selecionar um item válido na lista"

Else
indiceRegistro = frmCadastroClientes.ProcuraIndiceRegistroPodId(ListView1.ListItems.Item(ListView1.SelectedItem.Index))
If indiceRegistro <> -1 Then
Call frmCadastroClientes.CarregaRegistroPorIndice(indiceRegistro)
End If
Unload Me
End If
frmCadastroClientes.Show

End Sub
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub listview2_DblClick()

Dim linha, Index
Dim i As Integer
Dim oList As Object
Dim indiceRegistro As Long

On Error Resume Next
Set oList = ListView2.SelectedItem
If oList Is Nothing Then 'Exit Sub
MsgBox "É preciso selecionar um item válido na lista"

Else
indiceRegistro = frmCadastroServiçosConvenio.ProcuraIndiceRegistroPodId(ListView2.ListItems.Item(ListView2.SelectedItem.Index))
If indiceRegistro <> -1 Then
Call frmCadastroServiçosConvenio.CarregaRegistroPorIndice(indiceRegistro)
End If
Unload Me
End If
frmCadastroServiçosConvenio.Show
End Sub

Para mim um misterio, hehehehe.

 
Postado : 24/05/2012 7:05 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Creio que precisa "acompanhar" o que cd form "faz" ao abrir, pode ser que a rotina individual do formulario "force" a abertura no ultimo item

 
Postado : 25/05/2012 6:18 am
(@fabioprade)
Posts: 273
Reputable Member
Topic starter
 

Ok, vou verificar...

 
Postado : 25/05/2012 6:34 am