ABOUT Visual Basic Programmieren Programmierung Download Downloads Tips & Tricks Tipps & Tricks Know-How Praxis VB VBA Visual Basic for Applications VBS VBScript Scripting Windows ActiveX COM OLE API ComputerPC Microsoft Office Microsoft Office 97 Office 2000 Access Word Winword Excel Outlook Addins ASP Active Server Pages COMAddIns ActiveX-Controls OCX UserControl UserDocument Komponenten DLL EXE
Diese Seite wurde zuletzt aktualisiert am 09.01.2000

Diese Seite wurde zuletzt aktualisiert am 09.01.2000
Aktuell im ABOUT Visual Basic-MagazinGrundlagenwissen und TechnologienKnow How, Tipps und Tricks rund um Visual BasicActiveX-Komponenten, Controls, Klassen und mehr...AddIns für die Visual Basic-IDE und die VBA-IDEVBA-Programmierung in MS-Office und anderen AnwendungenScripting-Praxis für den Windows Scripting Host und das Scripting-ControlTools, Komponenten und Dienstleistungen des MarktesRessourcen für Programmierer (Bücher, Job-Börse)Dies&Das...

Themen und Stichwörter im ABOUT Visual Basic-Magazin
Code, Beispiele, Komponenten, Tools im Überblick, Shareware, Freeware
Ihre Service-Seite, Termine, Job-Börse
Melden Sie sich an, um in den vollen Genuss des ABOUT Visual Basic-Magazins zu kommen!
Informationen zum ABOUT Visual Basic-Magazin, Kontakt und Impressum

Zurück...

Zurück...


Anzeige

(-hg) mailto:hg_oletranslatecolor@aboutvb.de

Manchmal braucht man einfach den tatsächlichen Farbwert, der sich hinter den Konstanten für die Systemfarben (vbButtonFace, vbWindowText, vbWindowBackground usw.) verbirgt. Auch können viele API-Funktionen mit diesen Konstanten nichts anfangen, sondern erwarten einen regulären RGB-Farbwert.

Die API-Funktion MSDN-Library - OleTranslateColorOleTranslateColor "übersetzt" den RGB-Wert zu einer Systemfarben-Konstanten auf kürzestem Weg.

Declare Function OleTranslateColor Lib "oleaut32.dll" _
 (ByVal lOleColor As Long, ByVal lHPalette As Long, _
 ByRef lColorRef As Long) As Long

Im ersten Parameter übergeben Sie die zu übersetzende Farbe, den gewünschten Farbwert erhalten Sie im letzten Parameter zurück. Den mittleren Parameter (lHPalette) können Sie ignorieren, d.h. 0& übergeben. Nach einem erfolgreichen Aufruf der Funktion ist der Rückgabewert 0. Ein Beispiel:

Dim nColor As Long

OleTranslateColor vbWindowText, 0&, nColor
Debug.Print nColor

Wenn Sie anstelle des Rückgabeparameters lieber einen Funktionsaufruf verwenden wollen, verpacken Sie die API-Funktion in eine eigene kleine Funktion:

Function OleConvertColor(ByVal Color As Long) As Long
  Dim nColor As Long

  OleTranslateColor Color, 0&, nColor
  OleConvertColor = nColor
End Function

Die Funktion OleConvertColor liefert den einer Systemfarb-Konstanten entsprechenden RGB-Farbwert

Sie brauchen vor dem Aufruf von OleTranslateColor nicht zu prüfen, ob die gegebene Farbe eine Systemfarbenkonstante oder bereits einen regulären RGB-Farbwert darstellt. Wird OleTranslateColor ein RGB-Farbwert übergeben, wird schlicht dieser Farbwert wieder zurückgegeben.


Modul modOleConvertColor (modOleConvertColor.bas - ca. 0,4 KB)






Themen - Allgemeines
Themen - Entwicklungsumgebung (VB-IDE)
Themen - Forms
Themen - Steuerelemente (Controls)
Themen - Grafik
Themen - Dateien
Themen - UserControls
Themen - Einsteiger-Tipps
Themen - Wussten Sie...?

Übersicht nach Titeln in alphabetischer Reihenfolge
Übersicht nach Erscheinungsdatum

Schnellsuche



Zum Seitenanfang

Copyright © 1999 - 2017 Harald M. Genauck, ip-pro gmbh  /  Impressum

Zum Seitenanfang

Zurück...

Zurück...

Download Internet Explorer