Shell 09-01-2023, 01:35
Buenas!.

En un ejemplo de base de datos tengo dos tablas, gastos y categorías. Los registros de cada tabla se muestra en su tableView correspondiente.

Hay algunas columnas en ambos tableViews que su ancho están a cero para que no se vea su contenido, estas columnas contiene los campos claves,
donde se encuentran las claves o llaves primarias. El ancho a cero está hecho a drede, mientras no modifiques el diseño no tienes por que ver nada.
( No tienes por que pensar que se ocultaba de esa forma , de principio no tienes ni idea.).

¿ Es la forma tradicional hacerlo así ?. En parte no lo creo ya que puedo mover con el cursor del ratón y ajustar los anchos del tableview y hacerlo visible. ( Como hice ).
Como fui cambiándole el diseño, se llega a ver, como mínimo la última de los gastos. La primera de gastos no tiene por que verse, al igual que la primera de categorías.
( Mientras no toques con el ratón y no sepas que eso existe ). Smile

[Imagen: yXrLysr.png]

Saludos
Shell 08-01-2023, 13:38
Buenas!.

Este control tiene un menú flotante (aunque creo que se le llama de otra forma) cuando hacemos clic derecho sobre el.
Tenemos tres opciones. Eliminar color, eliminar colores, ordenar colores de forma descendente.

[Imagen: Y8iNSHf.png]

En el botón Mostrar Colores me muestra en consola el valor en decimal de cada color que se encuentra en la lista del ColorPalette.
Pero no entiendo el orden. ¿ Cómo se supone que ordena el array de colores ?.

Código:
Public Sub btnaddColor_Click()

  ColorPalette1.Add(ColorChooser1.Value)

End

Public Sub btnMostrarColores_Click()

  For j As Integer = 0 To ColorPalette1.Colors.Max
    Print ColorPalette1.Colors[j]
  Next

End

Public Sub Form_Open()

  Dim icolores As Integer[] = Settings["Colores"]

  ColorPalette1.Colors = If(IsNull(icolores), [&HFF0000, &H00FF00, &H0000FF], icolores)

End


Public Sub Form_Close()

  Settings["Colores"] = ColorPalette1.Colors

End


Esta es la lista que me crea a la salida por la consola:
 
Cita:16711834
16711935
10551551
255
39679
65535
65421
65280
11009792
16776960
16760832
16746240
16734464
16711680


Ya veo, ordena, pero no es un orden natural. Pues es como lo hace por defecto.
Un array de enteros solo se puede ordenar ascendente o descendente, no es como el de cadenas que tiene método de comparación.
Aun así los números no tienen un orden muy adecuado. Parecen más cadenas que números

Creando otro formulario en el mismo ejemplo, los números se mostraron así:

[Imagen: ToRa4bT.png]

Código:
Const NUMMAXIMOS As Integer = 10

Private numeros As New Integer[]
Private numerosca As New Integer[]
Private numeroscd As New Integer[]

Public Sub Form_Open()

  Randomize

  Me.Title = "Orden Ascendente y Descendente"
  For j As Integer = 0 To NUMMAXIMOS - 1
    numeros.Add(Rand(1, 10 ^ 8))
  Next

  numerosca = numeros.Copy().Sort(gb.Ascent)
  numeroscd = numeros.Copy().Sort(gb.Descent)

  With tblNumeros
    .AutoResize = True
    .Header = GridView.Both
    .Columns.Count = 3
    .Rows.Count = NUMMAXIMOS
    .Font = Font["Noto Mono, 11"]
    .Columns[0].Title = "Números"
    .Columns[0].Expand = True
    .Columns[0].Alignment = Align.Center
    .Columns[1].Title = "Ascendente"
    .Columns[1].Expand = True
    .Columns[1].Alignment = Align.Center
    .Columns[2].Title = "Descendente"
    .Columns[2].Expand = True
    .Columns[2].Alignment = Align.Center
  End With

End


Public Sub tblNumeros_Data(Row As Integer, Column As Integer)

  tblNumeros[Row, 0].Alignment = Align.Center
  tblNumeros[Row, 0].Text = numeros[Row]

  tblNumeros[Row, 1].Alignment = Align.Right
  tblNumeros[Row, 1].Text = numerosca[Row]

  tblNumeros[Row, 2].Alignment = Align.Right
  tblNumeros[Row, 2].Text = numeroscd[Row]

End

Public Sub btnSalir_Click()

  Me.Close

End


Saludos
Archivos adjuntos
.gz
EjemploControlesColoresEnGambas-0.0.1.tar.gz (Tamaño: 12.57 KB Descargas: 1)
Shell 07-01-2023, 01:35
Buenas!.

Espero que los reyes hayan sido muy buenos con ustedes. Bueno, eso será si se han portado bien. Tongue

Este ejemplo muestra el color que nuestro cursor apunta sobre el escritorio.
Es un ejemplo para hacer otro.

Código:
Private atimer As Timer

Public Sub Form_Open()

  With atimer = New Timer As "Tiempo"
    .Delay = 50
    .Start
  End With

End


Public Sub Tiempo_Timer()

  Dim unaimagen As Image

  lblX.Text = CStr(Mouse.ScreenX)
  lblY.Text = CStr(Mouse.screeny)

  unaimagen = Desktop.Screenshot(Mouse.ScreenX, Mouse.ScreenY, 1, 1).Image
  With PictureBox1
    .Mode = PictureBox.Fill
    .Picture = unaimagen.Picture
  End With

End


Public Sub Form_KeyPress()

  'No existen bordes en el formulario, la tecla escape aborta la ejecución
  If Key.code = Key.Esc Then Me.Close()

End

Mañana continuaré leyendo los mensajes que me quedan por leer. Ahora ya es un poco tarde. Buenas noches!.

Saludos
Archivos adjuntos
.gz
ObtenerColorPixelEscritorio-0.0.1.tar.gz (Tamaño: 12.07 KB Descargas: 1)
Páginas (557):    1 223 224 225 226 227 557   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 286
Último miembro: Emilio Uribe
Temas del foro: 1,720
Mensajes del foro: 8,934
Últimos temas
Archivos .ods
Foro: General
Último mensaje por: tincho, 01-07-2025, 18:54
Respuestas: 8 - Vistas: 228
Publicidad
Foro: Sobre gambas-es.org
Último mensaje por: tincho, 01-07-2025, 18:48
Respuestas: 6 - Vistas: 327
Web con gambas, a ver si ...
Foro: WebApp/WebForms
Último mensaje por: tincho, 01-07-2025, 17:47
Respuestas: 41 - Vistas: 32,556
Un sistema de ayudas cont...
Foro: Videotutoriales
Último mensaje por: guizans, 22-06-2025, 19:55
Respuestas: 3 - Vistas: 299
Crear una aplicación para...
Foro: Bases de Datos
Último mensaje por: Shell, 29-05-2025, 20:11
Respuestas: 11 - Vistas: 1,478
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.