EDITAR CELULA EM FLEX
EU USO FLEX SÓ“ QUE QUANDO ESTE FLEX TEM O FOCO ELE NÃO FICA EDITà ÂVEL, SOMENTE FICA EDITà ÂVEL QUANDO VAI COM A SETA PARA A DIREITA E VOLTA NOVAMENTE. COMO POSSO FAZER PARA ISSO NÃO ACONTECER???
ATENCIOSAMENTE,
VARGAX
ATENCIOSAMENTE,
VARGAX
é isso mesmo..... o velho e bom artifÃcio.
quando a celula pegar o foco vc faz:
txt.left = flex.CellLeft
txt.top= flex.CellTop
txt.height= flex.CellHeight
txt.width= flex.CellWidth
txt.visible=true
e no lostfocus(do txt)
flex.textmatrix(flex.row,flex.col) = txt.text
txt.visible=false
Boa sorte!
quando a celula pegar o foco vc faz:
txt.left = flex.CellLeft
txt.top= flex.CellTop
txt.height= flex.CellHeight
txt.width= flex.CellWidth
txt.visible=true
e no lostfocus(do txt)
flex.textmatrix(flex.row,flex.col) = txt.text
txt.visible=false
Boa sorte!
consertando o exemplo:
Dim gRow As Long, gCol As Long
Private Sub flex_Click()
Let gRow = flex.Row
Let gCol = flex.Col
txt.Left = flex.CellLeft + flex.Left
txt.Top = ((flex.CellHeight + 15) * gRow) + flex.Top
txt.Height = flex.CellHeight
txt.Width = flex.CellWidth
txt.Visible = True
txt.Text = flex.TextMatrix(gRow, gCol)
End Sub
Private Sub txt_LostFocus()
flex.TextMatrix(gRow, gCol) = txt.Text
txt.Text = ""
txt.Visible = False
End Sub
ou vc dê uma olhadinha nesse exemplo do Marcoratti
http://www.macoratti.net/gridedit.htm
Dim gRow As Long, gCol As Long
Private Sub flex_Click()
Let gRow = flex.Row
Let gCol = flex.Col
txt.Left = flex.CellLeft + flex.Left
txt.Top = ((flex.CellHeight + 15) * gRow) + flex.Top
txt.Height = flex.CellHeight
txt.Width = flex.CellWidth
txt.Visible = True
txt.Text = flex.TextMatrix(gRow, gCol)
End Sub
Private Sub txt_LostFocus()
flex.TextMatrix(gRow, gCol) = txt.Text
txt.Text = ""
txt.Visible = False
End Sub
ou vc dê uma olhadinha nesse exemplo do Marcoratti
http://www.macoratti.net/gridedit.htm
Tópico encerrado , respostas não são mais permitidas