tincho   13-08-2022, 22:21
#1
Hola amigos.
Finalmente logre crear un control que usando un solo byte permite manejar 8 opciones.
Gracias a Cogier y Vuott que me ayudaron con la codificación del byte con la cadena de texto, pero también a Jerry, Oliver, Fabien de la lista internacional.
Dejo aquí el código por si a alguien le interesa y por supuesto cualquier mejora en la simplificación del código, mejora de eficiencia, etc. es bienvenida.
Espero que les resulte igual de divertido que lo que me resulto a mi.
Este control esta hecho con la intensión de usarlo para editar un campo de una base de datos donde cada Bit es un grupo de trabajo y un usuario puede pertenecer a mas de un grupo, luego solo se gurda un solo Byte en la table.
[Imagen: imuTVSt.gif]
Archivos adjuntos
.gz
options-0.0.2.tar.gz (Tamaño: 15.3 KB Descargas: 0)
.gz
options-0.0.3.tar.gz (Tamaño: 15.51 KB Descargas: 4)
Última modificación: 13-08-2022, 23:50 por tincho.

1 Saludo.
tincho   13-08-2022, 23:47
#2
Shordi, olvide agradecerte, ya que no hubiese podido hacer el control sin tus fantásticos vídeos de controles, sobretodo el de Usercontrol.
Así, que muchas gracias.

Luego al usarlo encontré algunos errores, así que los corregí y subí la versión nueva.
Aquí esta en funcionamiento.
[Imagen: UVJBfVH.gif]
Última modificación: 13-08-2022, 23:55 por tincho.

1 Saludo.
Shordi   14-08-2022, 09:21
#3
¡Gracias, es un placer saber que algo de lo que hago le ha valido a alguien! Como que le da sentido a todo este lío... Big Grin Big Grin Big Grin

No podemos regresar
vuott   15-08-2022, 16:54
#4
...y este codigo ? Dodgy
Código:
Private tb As ToggleButton

Public Sub Form_Open()
  
  Dim b As Byte
  
  With Me
    .W = 300
    .H = 300
  End With
  For b = 0 To 7
    With tb = New ToggleButton(Me) As "TButton"
      .W = Me.W * 0.1
      .H = Me.H * 0.2
      .X = Me.X + (30 + (30 * b))
      .Y = 100
      .Text = CStr(2 ^ (7 - b))
    End With
  Next
  
End

Public Sub TButton_Click()

  Dim tgb As ToggleButton
  Dim binario As String

  For Each tgb In Me.Children
    binario &= Abs(tgb.Value)
  Next

  Me.Title = Val("&x" & binario)

End
Última modificación: 15-08-2022, 20:58 por vuott.

« Los horizontes perdidos nunca regresan. » (F. Battiato, 1983)

« Las ondas nunca regresan. » (Genesis: Ripples, 1976)

« Vita non suavis esse potest, nec Mors amara. »  (...vuott)
tincho   15-08-2022, 20:59
#5
(15-08-2022, 16:54)vuott escribió: ...y este codigo ?

lo pruebo.
Si, también esta bien.
Una pregunta
¿Por que algunos ejemplos usan Val("&x" & ...) mientras que otros Val("%" & ...)? evidentemente el resultado es el mismo.
Última modificación: 15-08-2022, 21:04 por tincho.

1 Saludo.
gambix   16-08-2022, 21:35
#6
Hexadecimal values start with &, &H or &h.

Binary values start with %, &X or &x.

Octal values start with &O or &o.

see it at -> gambaswiki.org/edit/lang/type/integer?ht=%26x

--
Fabien
Última modificación: 16-08-2022, 21:37 por gambix.
  
Usuarios navegando en este tema: 2 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.