MSFLEXGRID
Olá pessoal, estou com dificuldade com o controle MSFLEXGRID.
tenho vários TextBox[ô]s dentro de um frame... e logo abaixo um flexgrid.
No flexgrid tem as informações que preenchem os TextBox[ô]s, quando eu clico na primeira linha do flexgrid preenche certinho...
Private Sub CruzamentoGrid_Click()
x = CruzamentoGrid.Text
CruzamentoGrid.Col = 2
y = CruzamentoGrid.Text
CruzamentoGrid.Col = 3
z = CruzamentoGrid.Text
CruzamentoGrid.Col = 4
w = CruzamentoGrid.Text
MsgBox x & [Ô] | [Ô] & y & [Ô] | [Ô] & z & [Ô] | [Ô] & w
CruzamentoGrid.Col = 1
VarIdCruzamento = CruzamentoGrid.Text
Call PreencheTextbox
End Sub
Porém quando clico na segunda linha... ele não preenche os TextBox[ô]s.... continuando com a informação anterior... faço o controle pelo id
por favor... alguém me ajude... estou o dia inteiro tentando fazer funcionar... não consigo mais.
Obrigada!!!
tenho vários TextBox[ô]s dentro de um frame... e logo abaixo um flexgrid.
No flexgrid tem as informações que preenchem os TextBox[ô]s, quando eu clico na primeira linha do flexgrid preenche certinho...
Private Sub CruzamentoGrid_Click()
x = CruzamentoGrid.Text
CruzamentoGrid.Col = 2
y = CruzamentoGrid.Text
CruzamentoGrid.Col = 3
z = CruzamentoGrid.Text
CruzamentoGrid.Col = 4
w = CruzamentoGrid.Text
MsgBox x & [Ô] | [Ô] & y & [Ô] | [Ô] & z & [Ô] | [Ô] & w
CruzamentoGrid.Col = 1
VarIdCruzamento = CruzamentoGrid.Text
Call PreencheTextbox
End Sub
Porém quando clico na segunda linha... ele não preenche os TextBox[ô]s.... continuando com a informação anterior... faço o controle pelo id
por favor... alguém me ajude... estou o dia inteiro tentando fazer funcionar... não consigo mais.
Obrigada!!!
o certo seria isto
Private Sub CruzamentoGrid_Click()
With CruzamentoGrid
x = .TextMatrix(.RowSel, 0)
y = .TextMatrix(.RowSel, 2)
z = .TextMatrix(.RowSel, 3)
w = .TextMatrix(.RowSel, 4)
MsgBox x & [Ô] | [Ô] & y & [Ô] | [Ô] & z & [Ô] | [Ô] & w
VarIdCruzamento = .TextMatrix(.RowSel, 1)
Call PreencheTextbox
End With
End Sub
Marcelo... o TextBox[ô]s... quando eu clico no FlexGrid... preenche apenas o primeiro id... isto é... somento o primeiro item gravado...
será que tenho que fazer um loop?
Obrigadaa
será que tenho que fazer um loop?
Obrigadaa
colega o código que postei acima funciona, mas vc deve postar a função [txt-color=#0000f0]PreencheTextBox [/txt-color]o problema está nela.
Marcelo eis a função... estou pesquisando na internet.. mas até agora nada funcionou... o código que me passou... funciona sim... o problema está realmente no Preenchimento... mas qual é???
Private Sub PreencheTextbox()
Conecta True
Set MyRs2 = New ADODB.Recordset
StrSql2 = [Ô][Ô] & [Ô]select idcruzamento, nomeTouro, cruzaData, tipoCruza from cruzamento[Ô]
MyRs2.Open StrSql2, Conexao, adOpenStatic, adLockReadOnly
If MyRs2.RecordCount > 0 Then
txtIdCruzamento.Text = MyRs2!IdCruzamento
txtTouro.Text = MyRs2!nomeTouro
txtcruzaData.Text = MyRs2!cruzaData
comboCruza.Text = MyRs2!tipoCruza
Else
txtIdCruzamento.Text = [Ô][Ô]
txtTouro.Text = [Ô][Ô]
txtcruzaData.Text = [Ô][Ô]
comboCruza.Text = [Ô][Ô]
End If
Conecta False
End Sub
Obrigadaaaaa;)
Private Sub PreencheTextbox()
Conecta True
Set MyRs2 = New ADODB.Recordset
StrSql2 = [Ô][Ô] & [Ô]select idcruzamento, nomeTouro, cruzaData, tipoCruza from cruzamento[Ô]
MyRs2.Open StrSql2, Conexao, adOpenStatic, adLockReadOnly
If MyRs2.RecordCount > 0 Then
txtIdCruzamento.Text = MyRs2!IdCruzamento
txtTouro.Text = MyRs2!nomeTouro
txtcruzaData.Text = MyRs2!cruzaData
comboCruza.Text = MyRs2!tipoCruza
Else
txtIdCruzamento.Text = [Ô][Ô]
txtTouro.Text = [Ô][Ô]
txtcruzaData.Text = [Ô][Ô]
comboCruza.Text = [Ô][Ô]
End If
Conecta False
End Sub
Obrigadaaaaa;)
colega o problema está em sua query
veja
StrSql2 = [Ô][Ô] & [Ô]select idcruzamento, nomeTouro, cruzaData, tipoCruza from cruzamento[Ô]
então poderiamos mudar sua função para isto
Private Sub PreencheTextbox([txt-color=#0000f0]IdSel As Integer[/txt-color])
Conecta True
Set MyRs2 = New ADODB.Recordset
StrSql2 = [Ô][Ô] & [Ô]select idcruzamento, nomeTouro, cruzaData, tipoCruza from cruzamento [txt-color=#0000f0]WHERE idcruzamento =[Ô] & IdSel[/txt-color]
MyRs2.Open StrSql2, Conexao, adOpenStatic, adLockReadOnly
If MyRs2.RecordCount > 0 Then
txtIdCruzamento.Text = MyRs2!IdCruzamento
txtTouro.Text = MyRs2!nomeTouro
txtcruzaData.Text = MyRs2!cruzaData
comboCruza.Text = MyRs2!tipoCruza
Else
txtIdCruzamento.Text = [Ô][Ô]
txtTouro.Text = [Ô][Ô]
txtcruzaData.Text = [Ô][Ô]
comboCruza.Text = [Ô][Ô]
End If
Conecta False
End Sub
e vc vai chama-la no seu código anterior assim
Private Sub CruzamentoGrid_Click()
With CruzamentoGrid
x = .TextMatrix(.RowSel, 0)
y = .TextMatrix(.RowSel, 2)
z = .TextMatrix(.RowSel, 3)
w = .TextMatrix(.RowSel, 4)
MsgBox x & [Ô] | [Ô] & y & [Ô] | [Ô] & z & [Ô] | [Ô] & w
VarIdCruzamento = .TextMatrix(.RowSel, 1)
[txt-color=#0000f0] Call PreencheTextbox(VarIdCruzamento)[/txt-color]
End With
End Sub
veja se funciona
veja
StrSql2 = [Ô][Ô] & [Ô]select idcruzamento, nomeTouro, cruzaData, tipoCruza from cruzamento[Ô]
então poderiamos mudar sua função para isto
Private Sub PreencheTextbox([txt-color=#0000f0]IdSel As Integer[/txt-color])
Conecta True
Set MyRs2 = New ADODB.Recordset
StrSql2 = [Ô][Ô] & [Ô]select idcruzamento, nomeTouro, cruzaData, tipoCruza from cruzamento [txt-color=#0000f0]WHERE idcruzamento =[Ô] & IdSel[/txt-color]
MyRs2.Open StrSql2, Conexao, adOpenStatic, adLockReadOnly
If MyRs2.RecordCount > 0 Then
txtIdCruzamento.Text = MyRs2!IdCruzamento
txtTouro.Text = MyRs2!nomeTouro
txtcruzaData.Text = MyRs2!cruzaData
comboCruza.Text = MyRs2!tipoCruza
Else
txtIdCruzamento.Text = [Ô][Ô]
txtTouro.Text = [Ô][Ô]
txtcruzaData.Text = [Ô][Ô]
comboCruza.Text = [Ô][Ô]
End If
Conecta False
End Sub
e vc vai chama-la no seu código anterior assim
Private Sub CruzamentoGrid_Click()
With CruzamentoGrid
x = .TextMatrix(.RowSel, 0)
y = .TextMatrix(.RowSel, 2)
z = .TextMatrix(.RowSel, 3)
w = .TextMatrix(.RowSel, 4)
MsgBox x & [Ô] | [Ô] & y & [Ô] | [Ô] & z & [Ô] | [Ô] & w
VarIdCruzamento = .TextMatrix(.RowSel, 1)
[txt-color=#0000f0] Call PreencheTextbox(VarIdCruzamento)[/txt-color]
End With
End Sub
veja se funciona
Deu certo Marcelo... funcionou... havia esquecido de arrumar a query.... uma linha que passe desapercebido... já era... e como estou o dia inteirinho nisso.. não ia conseguiu achar isso de jeito nenhum.... por isso...
MUUUUITO OBRIGADA!!!!!!
valeu ;)
MUUUUITO OBRIGADA!!!!!!
valeu ;)
Tópico encerrado , respostas não são mais permitidas