Visual Basic - msflexgrid o datagrid

Life is soft - evento anual de software empresarial
 
Vista:

msflexgrid o datagrid

Publicado por Rakel (11 intervenciones) el 12/07/2002 10:28:42
Me gustaría saber cuál de los dos controles, si el msflexgrid o el datagrid puede ser editado y cómo editarlo para escribir directamente sobre él. Por favor es urgente. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:msflexgrid o datagrid

Publicado por TONI (69 intervenciones) el 12/07/2002 13:47:03
El msflexgrid no puede ser editado es solo para visualizar datos y el datagrid si puede editarse solo tienes que acceder a sus propiedades y elegir si se updata o no.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

msflexgrid o datagrid

Publicado por Rakel (11 intervenciones) el 12/07/2002 17:17:06
Gracias por tu ayuda Toni, pero sigo sin poder editarlo, ni el uno ni el otro. He intentado lo que me has dicho pero no me deja ni tan siquiera seleccionar una celda del datagrid, con lo cual mucho menos escribir en él. Tienes otra opción?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:msflexgrid o datagrid

Publicado por TONI (69 intervenciones) el 12/07/2002 19:44:52
Solo se me ocurre que tengas abierta la base de datos como solo lectura o mal conectada con este codigo te tiene que funcionar el datagrid.
Dim Path_db As String
Dim conn As ADODB.Connection
Dim rec As ADODB.Recordset
Set rec = New ADODB.Recordset
Set conn = New ADODB.Connection
Path_db = \"c:\\orbisw\\Data\\orbis.mdb\"
conn.ConnectionString = \"Provider=Microsoft.Jet.OLEDB.4.0;\" & _
\"Data Source=\" & Path_db & \";\" & \"Persist Security Info=False\"
conn.Open
With rec
.ActiveConnection = conn
.CursorLocation = adUseClient
.LockType = adLockOptimistic
.CursorType = adOpenKeyset
.Source = \"select * from personas\"
.Open
End With

Set DataGrid1.DataSource = rec
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:msflexgrid o datagrid

Publicado por Nelson Fredericksenn (125 intervenciones) el 12/07/2002 19:50:59
También puedes hacer edición con MSFlexGrid, Colocas 1º el control MSFG y encima le dibujas un control TextBox; te envío Código de Ejemplo: Si no sale completo, me avisas y lo envío por Mail
Dim contador As Integer

Sub msflexgridedit(MSFlexGrid As Control, edt As Control, keyascii As Integer)
Select Case keyascii
Case 0 To 32
edt = MSFlexGrid
edt.SelStart = 1000
Case Else
edt = Chr(keyascii)
edt.SelStart = 1
End Select
edt.Move MSFlexGrid.CellLeft, MSFlexGrid.CellTop, _
MSFlexGrid.CellWidth, MSFlexGrid.CellHeight
edt.Visible = True
edt.SetFocus
End Sub

Private Sub command1_Click()
'borra un determinado registro
Dim d As Integer
Set GenIsap = base.OpenRecordset("select * from Genisapre")
d = Val(fg2.TextMatrix(fg2.Row, 1))
strbusca = "idisap =" & d
GenIsap.FindFirst strbusca
GenIsap.Delete
GenIsap.Close
Call Form_Load
End Sub

Private Sub fg2_DblClick()
msflexgridedit fg2, txtedit, 32
End Sub

Private Sub fg2_KeyPress(keyascii As Integer)
msflexgridedit fg2, txtedit, keyascii
End Sub

Private Sub Guardar_Click()
Dim registro As Integer
Dim linea As Integer
On Error Resume Next
Set GenIsap = base.OpenRecordset("select * from GenIsapre")
For linea = 1 To fg2.Rows - 1
registro = Val(fg2.TextMatrix(linea, 1))
strbusca = "idisap =" & registro
GenIsap.FindFirst strbusca
If GenIsap.NoMatch Then
GenIsap.AddNew
GenIsap!idisap = reg
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:msflexgrid o datagrid

Publicado por Rakel (11 intervenciones) el 15/07/2002 12:09:09
Gracias a todos los que me habéis ayudado, me ha sido muy útil
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar