Comportamento da Cor para Usuários do Visual Basic 6.0

The ForeColor e BackColor propriedades dos controles possuem uma forma diferente de comportamento no Visual Basic 6.0 comparado ao Visual Basic 2008.

Diferenças Conceituais

No Visual Basic 6.0, a BackColor e ForeColor Propriedades de um controle tinham que ser explicitamente conjunto em time de design ou em execução time e as cores não tenham sido herdadas. In Visual Basic 2008, a menos que uma cor seja explicitamente conjunto em time de design ou em time de execução, ela herda a cor conjunto seletiva de seu pai.

Alterações no Código para o Comportamento da Cor

O exemplo a seguir de um formulário com dois CommandButton controles, Command1 e Command2, demonstra as diferenças de comportamento.

' Visual Basic 6.0

' Command1's BackColor is left at its default (gray).

' Command2's BackColor is explicitly set.

Command2.BackColor = vbBlack

' Explicitly set the BackColor of the form.

Form1.BackColor = vbRed

Depois de executar o código acima, Command1's BackColor ainda é o padrão (cinza), e Command2's BackColor é preta.

O exemplo a seguir mostra o comportamento no Visual Basic 2008. In Visual Basic 2008, CommandButton os controles são substituídos pelos Button controles.

' Visual Basic
' Command1's BackColor is left at its default (gray).
' Command2's BackColor is explicitly set.
Command2.BackColor = System.Drawing.Color.Black
' Explicitly set the BackColor of the form.
Me.BackColor = System.Drawing.Color.Red

Depois de executar o código acima, Command1's BackColor é vermelho e Command2's BackColor é preta. Porque o Command1's BackColor não foi explicitamente conjunto, vermelho é herdado do formulário.

Observação:

Isso se aplica a qualquer pai, não apenas para formulários.Se a Button estava contido em um Panel controlar dentro do formulário, alterando a cor de um painel ou o formulário deve alterar a cor das Button.

Observações de Atualização

Quando um aplicativo Visual Basic 6.0 é atualizado para Visual Basic 2008, o Assistente de atualização não tem como determinar se as cores serão herdadas. Após a atualização, pesquisar por qualquer código que explicitamente define a BackColor ou ForeColor propriedade em time de execução. Se ela estiver definida para um pai, defina explicitamente a cor dos controles filhos no tempo de design.

Consulte também

Referência

Tratamento de Cores para Usuários do Visual Basic 6.0

Outros recursos

Controles Windows Forms para Usuários do Visual Basic 6.0