cogier 26-07-2020, 17:43
¿Puedes explicar cómo añadir el código de Gambas? No puedo encontrar la forma correcta de hacerlo.
calcena 26-07-2020, 11:58
Buenas compañeros, una consulta, tengo unos desarrollos en los cuales para armar el contenido de un gridview paso el objeto por referencia para que en una función o método se construya y se rellene.
Bien este objeto lo primero que debe hacerse es formatearse para quedarse en blanco, bien pues para esto siempre tengo que acudir a la ayuda de una función que me hace una iteración dentro del control por las filas y columnas borrando el contenido.
No existe otra forma más ágil dentro del propio control que realice este formateo, he probado con .Clear pero esto me elimina el contenido pero NO me elimina las celdas que quedan vacías y se siguen acumulando hasta el infinito.
Código:
Public Function getErrores(ByRef objGridView As GridView) As GridView
 
  Dim iRow As Integer = 0
 
  rstResult = getResult()

  borrarGridView
 
  objGridView.Columns.Count = rstResult.Fields.Count
 
  objGridView.Rows.Height = 35
  objGridView.Header = rstResult.Fields.Count
 
  objGridView.Columns[0].Title = "Id"
  objGridView.Columns[0].Width = 0
  objGridView.Columns[0].Resizable = False
  objGridView.Rows[0].TextAlignment = 3
 
  objGridView.Columns[1].Title = "Estado"
  objGridView.Columns[1].Width = 42
  objGridView.Columns[1].Resizable = False
  objGridView.Rows[1].TextAlignment = 3
 
  objGridView.Columns[2].Title = "Fecha"
  objGridView.Columns[2].Width = 80
  objGridView.Columns[2].Resizable = False
  objGridView.Rows[2].TextAlignment = 3
 
  objGridView.Columns[3].Title = "Usuario"
  objGridView.Columns[3].Width = 80
  objGridView.Columns[3].Resizable = False
  objGridView.Rows[3].TextAlignment = 3
 
  objGridView.Columns[4].Title = "Formulario"
  objGridView.Columns[4].Width = 80
  objGridView.Columns[4].Resizable = False
  objGridView.Rows[4].TextAlignment = 3
 
  objGridView.Columns[5].Title = "Mensaje"
  objGridView.Columns[5].Width = 150
  objGridView.Columns[5].Resizable = False
  objGridView.Rows[5].TextAlignment = 3
 
  objGridView.Header = 3
  objGridView.Header = GridView.Horizontal
 
  rstResult.MoveFirst
 
  Do While rstResult.Available
    objGridView.Rows.Insert(iRow, 1)
    objGridView[iRow, 0].Text = rstResult!Id
    objGridView[iRow, 1].Text = rstResult!Estado
    objGridView[iRow, 2].Text = rstResult!FechaMod
    objGridView[iRow, 3].Text = rstResult!Usuario
    objGridView[iRow, 4].Text = rstResult!Formulario
    objGridView[iRow, 5].Text = rstResult!Mensaje
    
    iRow += 1
    rstResult.MoveNext
  Loop
 
  Return objGridView
 
End
Código:
Public Sub borrarGridView(ByRef objGridView As GridView)
 
  Dim x As Integer
 
  For x = objGridView.Rows.Count - 1 To Step -1
    objGridView.Rows.Remove(x, 1)
  Next
 
End

Se aceptan sugerencias de optimización y agilidad del proceso.

Saludos y gracias.
Shell 25-07-2020, 20:16
Buenas!.

Tengo un array y le quiero añadir x's veces otro array.

Primero usé este código:

Código:
Public Sub Ejemplo1()
  
  Dim miarray As Integer[] = [1, 2, 3]
  Dim apararepetir As Integer[] = [4, 5, 6]
  Dim i As Integer
  Dim cuentaveces As Integer
  
  cuentaveces = 3
  
  For i = 1 To cuentaveces
    miarray.Insert(apararepetir)
  Next
  
End

Ahora lo hice de otra forma más abreviada, algo más compleja, pero más rápida.
Fijaros en asignación del array.

Código:
Public Sub Ejemplo2()
  
  Dim cadena As String = "1,2,3"
  Dim insertar As String = ",4,5,6"
  Dim amiarray As New String[]
  Dim anumeros As Integer[]
  
  'Uso del método estático String para repetir tantas veces como queramos la concatenación
  'Concatenar todo lo anterior con la cadena que nos interesa
  'Convertir cadena con caracter delimitador a array
  
  amiarray = Split(cadena & String(3, insertar), ",")  
  
  'Conversión directa del array de tipo cadena a tipo entero
  anumeros = amiarray.Copy() 
  
  ' Print Object.Address(amiarray)
  ' Print Object.Address(anumeros)
  
End

¿ No existe una función parecida a Cstr o Cint para array's ?.  Smile
Sé que gambas puede convertir un tipo cadena a un entero directamente, pero  se le añade la función por motivos "educados".. Tongue
Pero convertir un array entero de tipo cadena a tipo entero ??. No había visto eso.

Saludos
Páginas (520):    1 513 514 515 516 517 520   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 264
Último miembro: NEURO
Temas del foro: 1,595
Mensajes del foro: 8,330
Últimos temas
Ver los repositorios del ...
Foro: Mundo Linux
Último mensaje por: Shordi, Hace 3 horas
Respuestas: 1 - Vistas: 24
¿Cómo crear servidor FTP ...
Foro: General
Último mensaje por: Shordi, Hace 3 horas
Respuestas: 2 - Vistas: 43
TextEditor. Formateado. E...
Foro: General
Último mensaje por: Shell, Ayer, 14:33
Respuestas: 2 - Vistas: 32
Gambas 3.20
Foro: Instalación
Último mensaje por: Shell, Ayer, 14:32
Respuestas: 11 - Vistas: 286
Antiguo foro. ¿ Viable ?
Foro: Sobre gambas-es.org
Último mensaje por: Shell, Ayer, 11:50
Respuestas: 0 - Vistas: 20
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.