USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  MsFlexGrid
Ricardo
não registrado
Postada em 01/12/2004 11:15 hs   
Tenho um form e um text box a medida que digito algo no text ele vai selecionando as informações cadastradas no grid.
Só que o grid possui 10 linha e quando por exemplo existe um cadastro com mais de 10 linha quando eu digito algo no text ele fica escondido ele não parece selecionado como poderia resolver este problema.?
     
Rinaldo
SÃO PAULO
SP - BRASIL
Postada em 01/12/2004 12:05 hs            
Bem eu testei com um DBGrid e um Data, ficou assim:
 
Private Sub Command1_Click()
    Data1.Recordset.MoveMax
End Sub
T+
Rinaldo
     
Ricardo
não registrado
Postada em 01/12/2004 17:39 hs   
Valeu pela dica , mas estou usando ado com vb6.
     
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 01/12/2004 23:54 hs            
Deixa eu ver se entendi Ricardo.... vc tem um FlexGrid e vc faz um cadastro ou uma busca dentro deste FlexGrid certo? Vc quer q, por exemplo, ao buscar um registro dentro do seu FlexGrid o foco vá para aquela linha e q vc veja a linha já q o flexgrid tem q ter um certo tamanho né?....
Bom, de primeira pra fazer isso é recomendado um DBGrid ou DataGrid pois qdo vc faz essas ações de buscar, filtrar etc um determinado registro ele, o Grid, já foca na linha desejada mas tem um jeito de vc fazer isso no flex sim Emoções...
segue código:
 
'Vamos por exemplo encontrar um registro dentro do flexgrid. Eu quero focá-lo e quero ver esta linha q foi focada
 
Dim Texto as String, I as Integer
Dim Rs as ADODB.Recordset
Dim DB as ADODB.Connection
 
'Código de conexão
.
.
.
'Encontrando o registro dentro do flexgrid com o botão de buscar
Private Sub CmdBuscaRegistro_Click()
 
On Error GoTo Erro
 
Texto = InputBox("Digite o nome:", "Consulta") 'Busca o campo da consulta desejado
rs.MoveF irst 'Para não perder o ponteiro no momento da busca
rs.Find "Nome Like '" & Texto & "*'"
With MSHFlexGrid1
'Fazendo uma busca dentro do flexgrid
For I = 1 To .Rows - 1 'linha 1 pois linha 0 é a do cabeçalho neste exemplo
 .Row = I
 If .Text = rs!Campo_da_Tabela Then
   .ColSel = .Cols - 1 'Seleciona a linha do registro encontrado dentro do flexgrid
   .TopRow = I 'Faz com q a linha encontrada seja colocada no topo do flexgrid. A linha no topo sempre q possível, não no caso das últimas linhas, mas sempre visíveis
  Exit For
 End If
Next I
End With
 
Erro:
Select Case Err.Number
Case 3021
MsgBox "Não foram encontrados registros!", vbCritical, "Erro"
Case 0
Case Else
 MsgBox Err.Number & vbCrLf & Err.Description
End Select
 
End Sub
 
Bom, dá um pouco de trabalho mas a linha fica focada e vc poderá vê-la mesmo se vc estiver na primeira linha e o registro a ser encontrado for o último. Não se esqueça de colocar a coluna a ser pesquisada antes de buscar o registro => MSHFlexGrid1.col = 1 por exemplo
 
qq dúvida é só postar
 
t+
TÓPICO EDITADO
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2026   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página