Páginas (2): 1 2   
tincho   17-04-2023, 19:32
#1
Hola amigos.

¿Alguien sabe si existen (en la granja o en otra parte ya que nativamente no hay) controles que permitan editar: Float[] e Integer[] ?
Los String[] supongo que podre editarlos con un ListEditor (tengo que hacer pruebas).
Luego lo mismo pero para una colección de Clave:Valor done valor es variant
Estoy haciendo un editor de configuraciones que en realidad edita una colección que guardo como json.

Para Texto simple uso TextBox, para enteros y decimales uso ValueBox, para valores Boleanos uso CheckBox Etc. pero cuando se trata de alguna Integer[] o Float[] la cosa no es tan sencilla.

Por ejemplo, una lista de enteros:

[Imagen: VSUwauy.gif]
Última modificación: 18-04-2023, 11:35 por tincho.

1 Saludo.
tincho   18-04-2023, 11:33
#2
Hice este formulario a modo de ejemplo de como necesito el control de edición de listas, pero no es un control, es solo un formulario.
En principio hay dos parámetros que pasar, uno es el tipo de dato de los items de la lista, por ejemplo Integer y otro la lista en formato Variant[]
Luego tendrá que existir un método que pase los valores del GridView a la lista.

Como también es necesario editar colecciones tal vez el parámetro de lista sea una colección directamente con el formato clave:valor para colecciones simples, diccionarios digamos.

¿Alguien me puede ayudar a convertir esto en un control?
Archivos adjuntos
.gz
sample-list-editor-custom-version-0.0.1.tar.gz (Tamaño: 16.55 KB Descargas: 3)
Última modificación: 18-04-2023, 11:35 por tincho.

1 Saludo.
Shordi   19-04-2023, 12:50
#3
En estos días ando algo escaso de tiempo, pero déjame que le eche un ojo y te cuento.

No podemos regresar
tincho   19-04-2023, 17:56
#4
(19-04-2023, 12:50)Shordi escribió: En estos días ando algo escaso de tiempo, pero déjame que le eche un ojo y te cuento.

Gracias.

1 Saludo.
Shordi   19-04-2023, 19:27
#5
Después de una aproximación surgen preguntas: ¿Quieres que el añadido y la edición se haga sobre la misma lista o en un textbox aparte como hace ListEditor?

Si lo quieres en la misma lista hay que:
-Establecer un botón de insertar (el de añadir solo no vale porque no estamos al final de la lista)
-Establecer un botón de Editar y una tecla rápida que lo lance

Si lo quieres en un textbox (o valuebox) aparte, las opciones son:
-Que esté siempre visible debajo, como hace ListEditor
-Que el control no sea visible y sólo aparezca debajo cuando se pulse el botón de insertar/añadir
-Que el control aparezca "flotante" sobre el ítem seleccionado en ese instante al pulsar dicho botón (al estilo InputBox)

Por otra parte en el mecanismo de pintar los iconos he hecho dos pequeña modificaciones

Código:
)

  Dim ch As Object
  Dim myclass As Class

  myclass = Object.Class(obj)

  If myclass.Symbols.Exist("Children") Then  'No todos los contenedores tienen Arrangement, por ejemplo los HBox
    For Each ch In obj.Children
      If Object.Type(ch) = "ToolButton" And Not IsNull(ch.tag) Then 'no todos los toolbuttons tienen tag
        If aThemes Then
          ch.Picture = TagPic(ch.Tag, ch.W - 7,, IIf(aThemes.Count > 0, aThemes, []))
        Else
          ch.Picture = TagPic(ch.Tag, ch.W - 7)
        Endif
      Else
        If aThemes Then
          Update(ch, IIf(aThemes.Count > 0, aThemes, []))
        Else
          Update(ch)
        Endif
      Endif
    Next
  Endif

End

Ya me cuentas el camino a seguir.

Saludos

No podemos regresar
tincho   20-04-2023, 09:30
#6
Hola Shordi.

Creo que la mejor opcion es la edición sobre la misma lista, con la tecla F2 podría ser, o doble click.
Te explico por que me parece mas adecuado, como ya sabes la finalidad es editar listas de la configuración, así que en el formulario estará este control (el de listas) y unos cuantos mas, así que mientras mas contenida este la operación dentro de su recinto mejor creo.
Este es un ejemplo del formulario (que también subo para que veas como trabajaría)
[Imagen: 5jRxrzY.png]

Subo una nueva versión con los botones "Insert" y "Edit".
[Imagen: YlUIYD9.png]
Luego con...
[code]
Gracias por la mejora del código recursivo de los iconos, como generalmente no utilizo los Hbox ni VBOx no había caído en el error.
Archivos adjuntos
.gz
sample-list-editor-custom-version-0.0.2.tar.gz (Tamaño: 17.43 KB Descargas: 3)
.gz
json-config-0.0.2.tar.gz (Tamaño: 18.87 KB Descargas: 1)

1 Saludo.
Shordi   21-04-2023, 20:15
#7
Atención preguntas:

¿Qué objetivo se supone que tienen las propiedades Moveable y Text?
¿Interesa que se puedan seleccionar una o varias opciones?


Saludos

No podemos regresar
tincho   21-04-2023, 20:41
#8
(21-04-2023, 20:15)Shordi escribió: ¿Qué objetivo se supone que tienen las propiedades Moveable y Text?

No lo se, pero le echo un vistazo y te digo algo.
(21-04-2023, 20:15)Shordi escribió: ¿Interesa que se puedan seleccionar una o varias opciones?

¿Te refiers a varios items, como el mode del gridview?

1 Saludo.
Shordi   21-04-2023, 20:42
#9
Cita:¿Te refiers a varios items, como el mode del gridview?
Sip

No podemos regresar
tincho   21-04-2023, 20:43
#10
(21-04-2023, 20:42)Shordi escribió: Sip

Creo que con mode = Single vale, lo del "Multiple" puede ser contraproducente.

Porque "Single" simplificaria el código y como es para editar una lista sencilla simple es mejor.
Última modificación: 21-04-2023, 20:45 por tincho.

1 Saludo.
Páginas (2): 1 2   
  
Usuarios navegando en este tema: 8 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.