Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

No se si se podrá realizar pero ahí va mi pregunta

Estas en el tema de No se si se podrá realizar pero ahí va mi pregunta en el foro de Visual Basic clásico en Foros del Web. Vamos a ver si me explico, deseo guardarunos codigos de color en una base de datos (fondo, Texto, fodo de formulatio y texto de formulario) ...
  #1 (permalink)  
Antiguo 04/09/2006, 04:13
 
Fecha de Ingreso: septiembre-2006
Mensajes: 3
Antigüedad: 18 años, 8 meses
Puntos: 0
No se si se podrá realizar pero ahí va mi pregunta

Vamos a ver si me explico, deseo guardarunos codigos de color en una base de datos (fondo, Texto, fodo de formulatio y texto de formulario) y que estos autmáticamente, alabrir los forms, se aplique a los distintos elementos para así obtener todas las pantallas de la aplicación con los mismos tonos y no tener que hacer los cambios en cada form.


gracias
  #2 (permalink)  
Antiguo 04/09/2006, 06:08
Avatar de elsaky  
Fecha de Ingreso: junio-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 53
Antigüedad: 18 años, 10 meses
Puntos: 0
si que se puede.
saludos
  #3 (permalink)  
Antiguo 04/09/2006, 08:06
 
Fecha de Ingreso: septiembre-2006
Mensajes: 3
Antigüedad: 18 años, 8 meses
Puntos: 0
Cita:
Iniciado por elsaky Ver Mensaje
si que se puede.
saludos


Muchas gracias elsaky, pero me ayudarías más dandome una idea de como hacerlo
  #4 (permalink)  
Antiguo 04/09/2006, 08:20
Avatar de tazzito  
Fecha de Ingreso: agosto-2006
Mensajes: 381
Antigüedad: 18 años, 9 meses
Puntos: 2
mmmm puedes tener una tabla con las siguientes caracteristicas

NombreOBJ
FormularioPROPIETARIO
ColorFondo
ColorLetras

y recorres el formulario para los objetos con algo asi

For Each MiObjeto In MiFormulario ' Itera por cada elemento.
buscarObjetoEnBaseDatos
MiObjeto.BackColor = val(Recordset!ColorFondo)
MiObjeto.ForeColor = val(Recordset!ColorLetras)
Next


algo asi... mas o menos
  #5 (permalink)  
Antiguo 04/09/2006, 13:38
 
Fecha de Ingreso: septiembre-2006
Mensajes: 3
Antigüedad: 18 años, 8 meses
Puntos: 0
Gracias Lo he conseguido

Esa es la función que me Sale

Public Function aplicacolor()

Dim Control As Control

colfondo = Val(rscof!fondo)
coltexto = Val(rscof!texto)
ccapturf = Val(rscof!fondo2)
ccapturt = Val(rscof!texto2)

For i = 0 To (Me.Controls.Count - 1)
Set Control = Me.Controls(i)
Nombrecont = Me.Controls(i).Name

tipo = UCase(TypeName(Control))
Select Case tipo
Case "PICTUREBOX"
Control.BackColor = colfondo
Case "FRAME"
Control.BackColor = colfondo
Control.ForeColor = coltexto
Case "LABEL"
If Nombrecont <> "muestrac" Then
Control.BackColor = colfondo
Control.ForeColor = coltexto
'Else
' Mstbox "muestrac"
End If
Case "TEXTBOX"
Control.BackColor = ccapturf
Control.ForeColor = ccapturt
Case "DRIVELISTBOX"
Control.BackColor = ccapturf
Control.ForeColor = ccapturt
Case "FILELISTBOX"
Control.BackColor = ccapturf
Control.ForeColor = ccapturt
Case "DIRLISTBOX"
Control.BackColor = ccapturf
Control.ForeColor = ccapturt
Case Else

End Select

Next

Me.BackColor = colfondo
End Function


Espero que a alguien le sirva
  #6 (permalink)  
Antiguo 04/09/2006, 18:30
Avatar de [EX3]  
Fecha de Ingreso: marzo-2006
Ubicación: Fuenlabrada, Madrid
Mensajes: 203
Antigüedad: 19 años, 1 mes
Puntos: 1
Para configuraciones una base de datos se queda muy grande (como matar moscas a cañonazos), para esto se suelen usar archivos de configuracion ya sean archivos INI, XML o un formato propio que te inventes, pero de una forma u otra tendras que cambiar igual uno a uno cada control, no existe forma de hacer un cambio global a los controles de la aplicacion.

Salu2...
__________________
Proyecto dx_lib32 (http://dxlib32.se32.com) Libreria DLL ActiveX para el desarollo de juegos y programas multimedia en Visual Basic 6.0 con la potencia de DirectX

Dice un dicho que "el que calla otorga". En internet tenemos otro que dice "nunca alimentes a un troll" que viene a decir "dejale hablar solo que se ya se cansara de incordiar". Solo los necios creen tener la razon con la ultima palabra.

  #7 (permalink)  
Antiguo 04/09/2006, 22:36
Avatar de Neverhood  
Fecha de Ingreso: abril-2001
Ubicación: Uruapan, Michoacán.
Mensajes: 109
Antigüedad: 24 años
Puntos: 0
Yo uso el siguiente código y me funciona muy bien:

Código:
Public Sub Color(ByVal Forma As Form)
  Dim InControl As Integer
  Forma.BackColor = &H80000001
    For InControl = 0 To Forma.Controls.Count - 1
      If TypeOf Forma.Controls(InControl) Is Label Then
        Forma.Controls(InControl).BackColor = &HE0E0E0
        Forma.Controls(InControl).ForeColor = &H8000000D
      ElseIf TypeOf Forma.Controls(InControl) Is Frame Then
        Forma.Controls(InControl).BackColor = &HE0E0E0
      ElseIf TypeOf Forma.Controls(InControl) Is Line Then
        Forma.Controls(InControl).BorderColor = RGB(0, 0, 0)
      ElseIf TypeOf Forma.Controls(InControl) Is CommandButton Then
        Forma.Controls(InControl).BackColor = RGB(0, 127, 0)
      ElseIf TypeOf Forma.Controls(InControl) Is PictureBox Then
        Forma.Controls(InControl).BackColor = &HE0E0E0
      ElseIf TypeOf Forma.Controls(InControl) Is OptionButton Then
        Forma.Controls(InControl).BackColor = &HE0E0E0
        Forma.Controls(InControl).ForeColor = RGB(255, 255, 255)
      End If
    Next InControl
End Sub
En el LOAD del formulario, lo mandas llamar:

Color Me
__________________
Un saludo desde Uruapan, Michoacán.
L.I. Enrique Campos Gómez, Desarrollador de Software, Municipio de Uruapan Michoacán
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:12.