Control del color para usuarios de Visual Basic 6.0
Actualización: noviembre 2007
En este tema se compara el control del color en Visual Basic 6.0 con equivalentes en Visual Basic 2008.
Trabajar con colores en Visual Basic 2008 es similar a trabajar con colores en Visual Basic 6.0; no obstante, existen algunas diferencias conceptuales que debe saber. Además, las nuevas enumeraciones de color en Visual Basic 2008 reemplazan a las constantes utilizadas para especificar colores en Visual Basic 6.0.
Diferencias conceptuales
En Visual Basic 6.0, un valor de tipo Long representaba los colores; en Visual Basic 2008 los colores son de tipo Color. En Visual Basic 6.0, se proporcionaban constantes para ocho colores estándar; en Visual Basic 2008 hay más de 100 colores con nombre.
Sugerencia: |
---|
Para buscar un valor equivalente para un color de Visual Basic 6.0 que no sea un color estándar, puede utilizar la clase ColorTranslator y pasarle el valor Long del color de Visual Basic 6.0. |
Constantes de color
En Visual Basic 6.0, las constantes se proporcionaron para colores del sistema que se pueden utilizar para asignar un color a las preferencias del sistema del usuario. En Visual Basic 2008, los colores del sistema son del tipo SystemColors.
Propiedades BackColor y ForeColor
En Visual Basic 6.0 las propiedades BackColor y ForeColor de un control debían establecerse explícitamente en tiempo de diseño o en tiempo de ejecución; los colores no podían heredarse. En Visual Basic 2008, a menos que un color se defina explícitamente en tiempo de diseño o en tiempo de ejecución, heredará la configuración de color de su elemento primario. Para obtener más información, vea Comportamiento del color para los usuarios de Visual Basic 6.0.
Propiedades Palette y PaletteMode
En Visual Basic 6.0, las propiedades Palette y PaletteMode de un formulario se utilizaban para controlar el juego de colores que se iba a utilizar al mostrar imágenes en una pantalla de 256 colores. Visual Basic 2008 no admite las propiedades Palette ni PaletteMode. Para obtener más información, vea Paletas para usuarios de Visual Basic 6.0.
Propiedad MaskColor
La propiedad de Visual Basic 6.0 MaskColor ya no existe para los controles CheckBox, Button y RadioButton. Puede emular la propiedad MaskColor utilizando los métodos gráficos. Para obtener más información, vea MaskColor para usuarios de Visual Basic 6.0.
Cambios de código para el control del color
En los siguientes ejemplos se muestran las diferencias entre las técnicas de codificación de Visual Basic 6.0 y Visual Basic 2008.
Cambios de código para establecer un color en un color del sistema
El código siguiente establece la propiedad BackColor de un formulario para que coincida con el color seleccionado por el usuario para la barra de título activa.
' Visual Basic 6.0
Me.BackColor = vbActiveTitleBar
' Visual Basic
Me.BackColor = System.Drawing.SystemColors.ActiveCaption
Cambios de código para establecer un color en un valor de Visual Basic 6.0
El ejemplo siguiente establece la propiedad BackColor de un control TextBox para que coincida con el verde más claro (&H00C0FFC0) del selector de color de Visual Basic 6.0.
' Visual Basic 6.0
textBox1.Text = &H00C0FFC0
' Visual Basic
TextBox1.BackColor = System.Drawing.ColorTranslator.FromOle(&HC0FFC0)
Equivalencias de constantes
En las siguientes tablas se muestran las constantes de Visual Basic 6.0 y sus equivalentes en Visual Basic 2008.
Equivalentes de las constantes de color
Visual Basic 6.0 |
Equivalente en Visual Basic 2005 |
---|---|
vbBlack |
|
vbRed |
|
vbGreen |
|
vbYellow |
|
vbBlue |
|
vbMagenta |
|
vbCyan |
|
vbWhite |
Equivalentes de las constantes de color del sistema
Visual Basic 6.0 |
Equivalente en Visual Basic 2005 |
---|---|
vb3DDKShadow |
|
vb3DFace |
|
vb3DHighlight |
|
vb3DLight |
|
vb3DShadow |
|
vbActiveBorder |
|
vbActiveTitleBar |
|
vbActiveTitleBarText |
|
vbApplicationWorkspace |
|
vbButtonFace |
|
vbButtonShadow |
|
vbButtonText |
|
vbDesktop |
|
vbGrayText |
|
vbHighlight |
|
vbHighlightText |
|
vbInactiveBorder |
|
vbInactiveCaptionText |
|
vbInactiveTitleBar |
|
vbInactiveTitleBarText |
|
vbInfoBackground |
|
vbInfoText |
|
vbMenuBar |
|
vbMenuText |
|
vbScrollBars |
|
vbTitleBarText |
|
vbWindowBackground |
|
vbWindowFrame |
|
vbWindowText |
Notas de actualización
Cuando una aplicación de Visual Basic 6.0 se actualiza a Visual Basic 2008 mediante el asistente para actualización, los colores se convierten con el método FromOle.
Tras la actualización, debe buscar cualquier código que establezca explícitamente la propiedad BackColor o ForeColor en tiempo de ejecución. Si se ha establecido para un elemento primario, establezca explícitamente los controles de color en tiempo de diseño, si no estos controles heredarán los colores del elemento primario.
Cualquier código que haya utilizado las propiedades Palette, PaletteMode o MaskColor deberá volver a escribirse en Visual Basic 2008.
Vea también
Conceptos
Comportamiento del color para los usuarios de Visual Basic 6.0
Paletas para usuarios de Visual Basic 6.0
MaskColor para usuarios de Visual Basic 6.0
Otros recursos
Controles de formularios Windows Forms para usuarios de Visual Basic 6.0