Avatar billede jonas_d Nybegynder
31. januar 2005 - 08:40 Der er 4 kommentarer

Dynamisk farveskift på highlightcolor

X I en grafisk brugerapplikation har jeg problemmer med Highlightning farven falder i med baggrunden. Dette kan ikke ændres i windows. Men man skulle kunne tilgå systemColors fra VBA (har læst i en klog bog) men det lykkes ikke rigtigt.
Avatar billede sjh Nybegynder
31. januar 2005 - 11:59 #1
Jeg ved ikke om VBA kan køre API.. men ellers skulle det virke med:


x = GetSysColor(COLOR_WINDOW)

'------------------------------------------
Const COLOR_SCROLLBAR = 0 'The Scrollbar colour
Const COLOR_BACKGROUND = 1 'Colour of the background with no wallpaper
Const COLOR_ACTIVECAPTION = 2 'Caption of Active Window
Const COLOR_INACTIVECAPTION = 3 'Caption of Inactive window
Const COLOR_MENU = 4 'Menu
Const COLOR_WINDOW = 5 'Windows background
Const COLOR_WINDOWFRAME = 6 'Window frame
Const COLOR_MENUTEXT = 7 'Window Text
Const COLOR_WINDOWTEXT = 8 '3D dark shadow (Win95)
Const COLOR_CAPTIONTEXT = 9 'Text in window caption
Const COLOR_ACTIVEBORDER = 10 'Border of active window
Const COLOR_INACTIVEBORDER = 11 'Border of inactive window
Const COLOR_APPWORKSPACE = 12 'Background of MDI desktop
Const COLOR_HIGHLIGHT = 13 'Selected item background
Const COLOR_HIGHLIGHTTEXT = 14 'Selected menu item
Const COLOR_BTNFACE = 15 'Button
Const COLOR_BTNSHADOW = 16 '3D shading of button
Const COLOR_GRAYTEXT = 17 'Grey text, of zero if dithering is used.
Const COLOR_BTNTEXT = 18 'Button text
Const COLOR_INACTIVECAPTIONTEXT = 19 'Text of inactive window
Const COLOR_BTNHIGHLIGHT = 20 '3D highlight of button
Const COLOR_2NDACTIVECAPTION = 27 'Win98 only: 2nd active window color
Const COLOR_2NDINACTIVECAPTION = 28 'Win98 only: 2nd inactive window color

Private Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long
Avatar billede jonas_d Nybegynder
07. februar 2005 - 10:50 #2
Hej SJH
Undskyld den passive periode
Jo vi kan køre API fra vba jeg kan også ændre alverdens knapfarver mm men highlightfarven i windows er dynamisk og kan ikke ses på en mørkegrå baggrund
VH
Jonas_D
Avatar billede sjh Nybegynder
07. februar 2005 - 16:52 #3
du må meget undskyld.. men jeg kan ikke se dit problem, er det hvis en bruger køre med en sort baggrund på sit skrivebord at det går galt.. eller hvad??
Avatar billede jonas_d Nybegynder
15. februar 2005 - 21:32 #4
Nej sættes grafikken op til en lys grå baggrund returnerer windows highlight med en fint synlig mørk ramme. Er baggrunden sort highlightes med en hvid ramme så fare so good. Men er baggrunden mørkegrå slam næsten samme mørkegrå ramme. Highlight farve styres af windows.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester