Tratamento de Cores para Usuários do Visual Basic 6.0

Este tópico compara tratamento no Visual Basic 6.0 com equivalentes no de coresVisual Basic 2008.

Trabalhar com cores no Visual Basic 2008 é semelhante a trabalhar com cores no Visual Basic 6.0; Entretanto, existem algumas diferenças conceituais que você precisa saber. Além disso, as constantes usadas para especificar cores no Visual Basic 6.0 são substituídas por novas enumerações de cor Visual Basic 2008.

Diferenças Conceituais

No Visual Basic 6.0, cores eram representadas por um valor do tipo Long; em Visual Basic 2008 cores são do tipo Color. No Visual Basic 6.0, constantes eram fornecidas para oito cores padrão; no Visual Basic 2008 Há mais de 100 cores nomeadas.

Dica:

Para localizar um valor equivalente para uma cor Visual Basic 6.0 que não seja uma cor padrão, você pode usar o ColorTranslator classe e passá-lo a Long valor da cor Visual Basic 6.0.

Constantes de Cores

No Visual Basic 6.0, constantes eram fornecidas para cores do sistema que poderiam ser usadas para mapear uma cor para as preferências do sistema do usuário.In Visual Basic 2008, as cores do sistema são do tipo SystemColors.

Propriedades ForeColor e BackColor

No Visual Basic 6.0, a BackColor e ForeColor Propriedades de um controle tinham que ser explicitamente conjunto em time de design ou time de execução; cores não tenham sido herdadas. In Visual Basic 2008, a menos que explicitamente definida uma cor no time de design ou em time de execução, ele herdará a configuração de cor do seu pai. Para obter mais informações, consulte Comportamento da Cor para Usuários do Visual Basic 6.0.

Propriedades Palette e PaletteMode

No Visual Basic 6.0, a Palette e PaletteMode Propriedades de um formulário eram usadas para controlar o conjunto de cores a ser usado quando exibindo imagens num displau de 256 cores. Visual Basic 2008 não oferece suporte a Palette ou PaletteMode Propriedades. Para obter mais informações, consulte Paletas para usuários do Visual Basic 6.0.

Propriedade MaskColor

O Visual Basic 6.0 MaskColor propriedade não existe para o CheckBox, Button, e RadioButton controles. Você pode emular o MaskColor propriedade usando os métodos gráficos. Para obter mais informações, consulte MaskColor para usuários do Visual Basic 6.0.

Alterações de Código para Tratamento de Cores

Os exemplos a seguir ilustram as diferenças na codificação técnicas entre o Visual Basic 6.0 e Visual Basic 2008.

Alterações de Código para Definir uma Cor para uma Cor do Sistema

O código a seguir define o BackColor de um formulário para corresponder à cor selecionada pelo usuário para a BAR de título ativo.

' Visual Basic 6.0

Me.BackColor = vbActiveTitleBar

' Visual Basic
Me.BackColor = System.Drawing.SystemColors.ActiveCaption

Alterações de Código para Definir uma Cor para um Valor Visual Basic 6.0

O exemplo a seguir define o BackColor propriedade de um TextBox controle para coincidir o (verde mais claro&H00C0FFC0) do seletor de cor do Visual Basic 6.0.

' Visual Basic 6.0

textBox1.Text = &H00C0FFC0

' Visual Basic
TextBox1.BackColor = System.Drawing.ColorTranslator.FromOle(&HC0FFC0)

Equivalências de Constantes

As tabelas a seguir listam constantes Visual Basic 6.0 e seus Visual Basic 2008 equivalentes.

Equivalentes Constante de Cor

Visual Basic 6,0

Equivalente Visual Basic 2005

vbBlack

Black

vbRed

Red

vbGreen

Lime

vbYellow

Yellow

vbBlue

Blue

vbMagenta

Magenta

vbCyan

Cyan

vbWhite

White

Equivalentes Constante de Cor do Sistema

Visual Basic 6,0

Equivalente Visual Basic 2005

vb3DDKShadow

ControlDarkDark

vb3DFace

Control

vb3DHighlight

ControlLightLight

vb3DLight

ControlLight

vb3DShadow

ControlDark

vbActiveBorder

ActiveBorder

vbActiveTitleBar

ActiveCaption

vbActiveTitleBarText

ActiveCaptionText

vbApplicationWorkspace

AppWorkspace

vbButtonFace

Control

vbButtonShadow

ControlDark

vbButtonText

ControlText

vbDesktop

Desktop

vbGrayText

GrayText

vbHighlight

Highlight

vbHighlightText

HighlightText

vbInactiveBorder

InactiveBorder

vbInactiveCaptionText

InactiveCaptionText

vbInactiveTitleBar

InactiveCaption

vbInactiveTitleBarText

InactiveCaptionText

vbInfoBackground

Info

vbInfoText

InfoText

vbMenuBar

Menu

vbMenuText

MenuText

vbScrollBars

ScrollBar

vbTitleBarText

ActiveCaptionText

vbWindowBackground

Window

vbWindowFrame

WindowFrame

vbWindowText

WindowText

Observações de Atualização

Quando um aplicativo Visual Basic 6.0 é atualizado para Visual Basic 2008 usando o Assistente de atualização, cores são convertidas usando o FromOle método.

Após atualização você deve pesquisar por qualquer código que explicitamente define a BackColor ou ForeColor propriedade em time de execução. Se a propriedade está sendo definida para um pai, defina explicitamente a cor dos controles do filho em tempo de design, caso contrário os controles do filho herdarão as cores do pai.

Qualquer código que é usado o Palette, PaletteMode, ou MaskColor Propriedades precisará ser reescrito no Visual Basic 2008.

Consulte também

Conceitos

Comportamento da Cor para Usuários do Visual Basic 6.0

Paletas para usuários do Visual Basic 6.0

MaskColor para usuários do Visual Basic 6.0

Outros recursos

Controles Windows Forms para Usuários do Visual Basic 6.0