Behandeln von Farben für Visual Basic 6.0-Benutzer
Aktualisiert: November 2007
In diesem Thema wird die Farbbehandlung in Visual Basic 6.0 mit den Entsprechungen in Visual Basic 2008 verglichen.
Farben werden in Visual Basic 2008 ähnlich verwendet wie in Visual Basic 6.0. Es gibt jedoch einige konzeptionelle Unterschiede, die Sie kennen sollten. Außerdem werden die Konstanten, mit denen in Visual Basic 6.0 Farben angegeben werden, in Visual Basic 2008 durch neue Farb-Enumerationen ersetzt.
Konzeptionelle Unterschiede
In Visual Basic 6.0 wurden Farben durch einen Wert vom Typ Long dargestellt. In Visual Basic 2008 haben Farben den Typ Color. In Visual Basic 6.0 wurden Konstanten für acht Standardfarben bereitgestellt. In Visual Basic 2008 gibt es über 100 benannte Farben.
![]() |
---|
Um einen äquivalenten Wert für eine Visual Basic 6.0-Farbe zu finden, bei der es sich nicht um eine Standardfarbe handelt, können Sie die ColorTranslator-Klasse verwenden und an diese Klasse den Long-Wert der Visual Basic 6.0-Farbe übergeben. |
Farbkonstanten
In Visual Basic 6.0 werden Konstanten für Systemfarben bereitgestellt, mit denen eine Farbe den Systemeinstellungen des Benutzers zugeordnet werden kann. In Visual Basic 2008 sind die Systemfarben vom Typ SystemColors.
BackColor-Eigenschaft und ForeColor-Eigenschaft
In Visual Basic 6.0 mussten die Eigenschaften BackColor und ForeColor eines Steuerelements zur Entwurfs- oder zur Laufzeit explizit festgelegt werden; Farben konnten nicht vererbt werden. In Visual Basic 2008 wird die Farbeinstellung des übergeordneten Elements geerbt, es sei denn, zur Entwurfs- oder zur Laufzeit wurde eine Farbe explizit festgelegt. Weitere Informationen finden Sie unter Farbverhalten für Visual Basic 6.0-Benutzer.
Palette-Eigenschaft und PaletteMode-Eigenschaft
In Visual Basic 6.0 werden die Palette-Eigenschaft und die PaletteMode-Eigenschaft eines Formulars zum Steuern der Farben verwendet, die beim Anzeigen von Bildern auf einem Bildschirm mit 256 Farben eingesetzt werden. In Visual Basic 2008 werden die Palette-Eigenschaft und die PaletteMode-Eigenschaft nicht unterstützt. Weitere Informationen finden Sie unter Paletten für Visual Basic 6.0-Benutzer.
MaskColor-Eigenschaft
Die MaskColor-Eigenschaft von Visual Basic 6.0 existiert nicht mehr für die Steuerelemente CheckBox, Button und RadioButton. Sie können die MaskColor-Eigenschaft durch Verwenden der Grafikmethoden emulieren. Weitere Informationen finden Sie unter MaskColor für Visual Basic 6.0-Benutzer.
Änderungen am Code für die Behandlung von Farben
Im folgenden Beispiel werden Unterschiede in den Codierungstechniken von Visual Basic 6.0 und Visual Basic 2008 dargestellt.
Änderungen am Code zum Festlegen einer Farbe auf eine Systemfarbe
Im folgenden Code wird die BackColor-Eigenschaft eines Formulars festgelegt, sodass sie der vom Benutzer für die aktive Titelleiste ausgewählten Farbe entspricht.
' Visual Basic 6.0
Me.BackColor = vbActiveTitleBar
' Visual Basic
Me.BackColor = System.Drawing.SystemColors.ActiveCaption
Änderungen am Code zum Festlegen einer Farbe auf einen Visual Basic 6.0-Wert
Im folgenden Beispiel wird die BackColor-Eigenschaft eines TextBox-Steuerelements so festgelegt, dass sie dem hellsten Grün (&H00C0FFC0) der Visual Basic 6.0-Farbauswahl entspricht:
' Visual Basic 6.0
textBox1.Text = &H00C0FFC0
' Visual Basic
TextBox1.BackColor = System.Drawing.ColorTranslator.FromOle(&HC0FFC0)
Entsprechungen für Konstanten
In den folgenden Tabellen werden die Konstanten von Visual Basic 6.0 und deren Visual Basic 2008-Entsprechungen aufgeführt.
Entsprechungen für Farbkonstanten
Visual Basic 6.0 |
Visual Basic 2005-Entsprechung |
---|---|
vbBlack |
|
vbRed |
|
vbGreen |
|
vbYellow |
|
vbBlue |
|
vbMagenta |
|
vbCyan |
|
vbWhite |
Entsprechungen für Systemfarbkonstanten
Visual Basic 6.0 |
Visual Basic 2005-Entsprechung |
---|---|
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 |
Hinweise zum Durchführen einer Aktualisierung
Wenn eine Visual Basic 6.0-Anwendung mit dem Aktualisierungs-Assistenten auf Visual Basic 2008 aktualisiert wird, werden Farben mithilfe der FromOle-Methode konvertiert.
Nach der Aktualisierung sollten Sie nach Code suchen, mit dem die ForeColor-Eigenschaft oder die BackColor-Eigenschaft zur Laufzeit explizit festgelegt wird. Wenn diese Eigenschaften für ein übergeordnetes Element festgelegt werden, müssen Sie die Farbe der untergeordneten Steuerelemente zur Entwurfszeit festlegen, andernfalls erben die untergeordneten Steuerelemente die Farben vom übergeordneten Element.
Code, in dem die Eigenschaften Palette, PaletteMode oder MaskColor verwendet werden, muss in Visual Basic 2008 umgeschrieben werden.
Siehe auch
Konzepte
Farbverhalten für Visual Basic 6.0-Benutzer
Paletten für Visual Basic 6.0-Benutzer
MaskColor für Visual Basic 6.0-Benutzer