Cette solution me semble inadaptée à partir du moment où tout le système est impacté. J'imagine mal développer un soft qui changerait l'apparence du Windows le temps de l'exécution de celui-ci. Et si le soft plante ? Comme tu le dis, la procédure de remise à la normale des couleurs ne sera pas exécutée... Pas convaincant du tout.
Guy
"Modeste" a écrit dans le message de news:
Bonsour® il est possible via les API windows de changer les couleurs de tout les eléments affichés. !!!!!!!!!!!! attention cela s'applique à tout l'environnement windows. !!!!!!!!! il faut donc mémoriser les couleurs avant exécution de ton application,
pour
pouvoir les restituer lorsque que tu la quitte... avec le risque de sortie imprévue !!!
des exemples d'utilisation des API là : 'KPD-Team 1999 'URL: http://www.allapi.net/ notament : API-Guide download API-Guide 3.7 (+/- 2.20MB)(*) http://users.chello.be/cr27630/3.7/agsetup.exe
dont cet exemple à utiliser et modifier avec prudence ;o)))
Long Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As
Long,
lpSysColor As Long, lpColorValues As Long) As Long Dim SavedColors(18) As Long, IndexArray(18) As Long, NewColors(18) As Long Private Sub Form_Load() 'KPD-Team 1999 'URL: http://www.allapi.net/ 'E-Mail: ' Save current system colors: For i = 0 To 18 SavedColors(i) = GetSysColor(i) Next i ' Change all display elements: For i = 0 To 18 Randomize Timer NewColors(i) = RGB(Rnd * 255, Rnd * 255, Rnd * 255) IndexArray(i) = i Next i SetSysColors 19, IndexArray(0), NewColors(0) End Sub Private Sub Form_Unload(Cancel As Integer) ' Restore system colors: SetSysColors 19, IndexArray(0), SavedColors(0) End Sub
wrote:
Bonjour,
Je voudrais changer la couleur des menus de mon programme, mais l'option Backcolor n'existe pas pour les menus !
Comment pourrais-je faire ?
Il existe bien des OCX comme MenuXP, mas je ne voudrais pas mettre d'OCX dans mo programme.
Merci.
-- n'oubliez pas les FAQ : http://www.excelabo.net http://dj.joss.free.fr/faq.htm http://www.faqoe.com http://faqword.free.fr -- Feed Back http://viadresse.com/?94912042
Effectivement on retombe dans le subclassing pour ne l'appliquer qu'à ton application. C'est à dire activation lorsque tu as la main et desctivation lorsque tu la perd un peu délicat à gerer mais faisable.
Je viens de retrouver le bout de code qui fait cela sur
http://megaten.alterlinks.fr ===> Color_SB_PB_MB ( Color StatusBar, ProgressBar et MenuBar )
juste un exercice de style ( pas tres stable ) que je ne recommande pas pour une appli pro.
Michel a écrit :
Guy DETIENNE a écrit :
Salut ;O)
Cette solution me semble inadaptée à partir du moment où tout le
système est
impacté.
J'imagine mal développer un soft qui changerait l'apparence du Windows le
temps de l'exécution de celui-ci.
Et si le soft plante ? Comme tu le dis, la procédure de remise à la
normale
des couleurs ne sera pas exécutée... Pas convaincant du tout.
Guy
"Modeste" <nomail@nomail.net> a écrit dans le message de
news:uzo0MsWqFHA.3720@TK2MSFTNGP14.phx.gbl...
Bonsour® Fr@d
il est possible via les API windows
de changer les couleurs de tout les eléments affichés.
!!!!!!!!!!!! attention cela s'applique à tout l'environnement windows.
!!!!!!!!!
il faut donc mémoriser les couleurs avant exécution de ton application,
pour
pouvoir les restituer lorsque que tu la quitte...
avec le risque de sortie imprévue !!!
des exemples d'utilisation des API là :
'KPD-Team 1999
'URL: http://www.allapi.net/
notament :
API-Guide download
API-Guide 3.7 (+/- 2.20MB)(*)
http://users.chello.be/cr27630/3.7/agsetup.exe
dont cet exemple à utiliser et modifier avec prudence ;o)))
Long
Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As
Long,
lpSysColor As Long, lpColorValues As Long) As Long
Dim SavedColors(18) As Long, IndexArray(18) As Long, NewColors(18) As
Long
Private Sub Form_Load()
'KPD-Team 1999
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
' Save current system colors:
For i = 0 To 18
SavedColors(i) = GetSysColor(i)
Next i
' Change all display elements:
For i = 0 To 18
Randomize Timer
NewColors(i) = RGB(Rnd * 255, Rnd * 255, Rnd * 255)
IndexArray(i) = i
Next i
SetSysColors 19, IndexArray(0), NewColors(0)
End Sub
Private Sub Form_Unload(Cancel As Integer)
' Restore system colors:
SetSysColors 19, IndexArray(0), SavedColors(0)
End Sub
wrote:
Bonjour,
Je voudrais changer la couleur des menus de mon programme, mais
l'option Backcolor n'existe pas pour les menus !
Comment pourrais-je faire ?
Il existe bien des OCX comme MenuXP, mas je ne voudrais pas mettre
d'OCX dans mo programme.
Merci.
--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042
Effectivement on retombe dans le subclassing pour ne l'appliquer qu'à
ton application.
C'est à dire activation lorsque tu as la main et desctivation lorsque tu
la perd
un peu délicat à gerer mais faisable.
Je viens de retrouver le bout de code qui fait cela sur
http://megaten.alterlinks.fr ===> Color_SB_PB_MB ( Color StatusBar, ProgressBar et MenuBar )
juste un exercice de style ( pas tres stable ) que je ne recommande pas pour une appli pro.
Cette solution me semble inadaptée à partir du moment où tout le système est impacté. J'imagine mal développer un soft qui changerait l'apparence du Windows le temps de l'exécution de celui-ci. Et si le soft plante ? Comme tu le dis, la procédure de remise à la normale des couleurs ne sera pas exécutée... Pas convaincant du tout.
Guy
"Modeste" a écrit dans le message de news:
Bonsour® il est possible via les API windows de changer les couleurs de tout les eléments affichés. !!!!!!!!!!!! attention cela s'applique à tout l'environnement windows. !!!!!!!!! il faut donc mémoriser les couleurs avant exécution de ton application,
pour
pouvoir les restituer lorsque que tu la quitte... avec le risque de sortie imprévue !!!
des exemples d'utilisation des API là : 'KPD-Team 1999 'URL: http://www.allapi.net/ notament : API-Guide download API-Guide 3.7 (+/- 2.20MB)(*) http://users.chello.be/cr27630/3.7/agsetup.exe
dont cet exemple à utiliser et modifier avec prudence ;o)))
Long Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As
Long,
lpSysColor As Long, lpColorValues As Long) As Long Dim SavedColors(18) As Long, IndexArray(18) As Long, NewColors(18) As Long Private Sub Form_Load() 'KPD-Team 1999 'URL: http://www.allapi.net/ 'E-Mail: ' Save current system colors: For i = 0 To 18 SavedColors(i) = GetSysColor(i) Next i ' Change all display elements: For i = 0 To 18 Randomize Timer NewColors(i) = RGB(Rnd * 255, Rnd * 255, Rnd * 255) IndexArray(i) = i Next i SetSysColors 19, IndexArray(0), NewColors(0) End Sub Private Sub Form_Unload(Cancel As Integer) ' Restore system colors: SetSysColors 19, IndexArray(0), SavedColors(0) End Sub
wrote:
Bonjour,
Je voudrais changer la couleur des menus de mon programme, mais l'option Backcolor n'existe pas pour les menus !
Comment pourrais-je faire ?
Il existe bien des OCX comme MenuXP, mas je ne voudrais pas mettre d'OCX dans mo programme.
Merci.
-- n'oubliez pas les FAQ : http://www.excelabo.net http://dj.joss.free.fr/faq.htm http://www.faqoe.com http://faqword.free.fr -- Feed Back http://viadresse.com/?94912042
Effectivement on retombe dans le subclassing pour ne l'appliquer qu'à ton application. C'est à dire activation lorsque tu as la main et desctivation lorsque tu la perd un peu délicat à gerer mais faisable.
Je viens de retrouver le bout de code qui fait cela sur
http://megaten.alterlinks.fr ===> Color_SB_PB_MB ( Color StatusBar, ProgressBar et MenuBar )
juste un exercice de style ( pas tres stable ) que je ne recommande pas pour une appli pro.
Guy DETIENNE
J'irai faire un petit tour...
Merci.
"Michel" a écrit dans le message de news:qumPe.26920$
Michel a écrit : > Guy DETIENNE a écrit : > >> Salut ;O) >> >> Cette solution me semble inadaptée à partir du moment où tout le >> système est >> impacté. >> J'imagine mal développer un soft qui changerait l'apparence du Windows
le
>> temps de l'exécution de celui-ci. >> Et si le soft plante ? Comme tu le dis, la procédure de remise à la >> normale >> des couleurs ne sera pas exécutée... Pas convaincant du tout. >> >> Guy >> >> "Modeste" a écrit dans le message de >> news: >> >>> Bonsour® >>> il est possible via les API windows >>> de changer les couleurs de tout les eléments affichés. >>> !!!!!!!!!!!! attention cela s'applique à tout l'environnement
windows.
>>> !!!!!!!!! >>> il faut donc mémoriser les couleurs avant exécution de ton
application,
>> >> >> pour >> >>> pouvoir les restituer lorsque que tu la quitte... >>> avec le risque de sortie imprévue !!! >>> >>> >>> des exemples d'utilisation des API là : >>> 'KPD-Team 1999 >>> 'URL: http://www.allapi.net/ >>> notament : >>> API-Guide download >>> API-Guide 3.7 (+/- 2.20MB)(*) >>> http://users.chello.be/cr27630/3.7/agsetup.exe >>> >>> dont cet exemple à utiliser et modifier avec prudence ;o))) >>> >>> Const COLOR_SCROLLBAR = 0 >>> Const COLOR_BACKGROUND = 1 >>> Const COLOR_ACTIVECAPTION = 2 >>> Const COLOR_INACTIVECAPTION = 3 >>> Const COLOR_MENU = 4 >>> Const COLOR_WINDOW = 5 >>> Const COLOR_WINDOWFRAME = 6 >>> Const COLOR_MENUTEXT = 7 >>> Const COLOR_WINDOWTEXT = 8 >>> Const COLOR_CAPTIONTEXT = 9 >>> Const COLOR_ACTIVEBORDER = 10 >>> Const COLOR_INACTIVEBORDER = 11 >>> Const COLOR_APPWORKSPACE = 12 >>> Const COLOR_HIGHLIGHT = 13 >>> Const COLOR_HIGHLIGHTTEXT = 14 >>> Const COLOR_BTNFACE = 15 >>> Const COLOR_BTNSHADOW = 16 >>> Const COLOR_GRAYTEXT = 17 >>> Const COLOR_BTNTEXT = 18 >>> Private Declare Function GetSysColor Lib "user32" (ByVal nIndex As
Long)
>> >> >> As >> >>> Long >>> Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As >> >> >> Long, >> >>> lpSysColor As Long, lpColorValues As Long) As Long >>> Dim SavedColors(18) As Long, IndexArray(18) As Long, NewColors(18) As >>> Long >>> Private Sub Form_Load() >>> 'KPD-Team 1999 >>> 'URL: http://www.allapi.net/ >>> 'E-Mail: >>> ' Save current system colors: >>> For i = 0 To 18 >>> SavedColors(i) = GetSysColor(i) >>> Next i >>> ' Change all display elements: >>> For i = 0 To 18 >>> Randomize Timer >>> NewColors(i) = RGB(Rnd * 255, Rnd * 255, Rnd * 255) >>> IndexArray(i) = i >>> Next i >>> SetSysColors 19, IndexArray(0), NewColors(0) >>> End Sub >>> Private Sub Form_Unload(Cancel As Integer) >>> ' Restore system colors: >>> SetSysColors 19, IndexArray(0), SavedColors(0) >>> End Sub >>> >>> wrote: >>> >>>> Bonjour, >>>> >>>> Je voudrais changer la couleur des menus de mon programme, mais >>>> l'option Backcolor n'existe pas pour les menus ! >>>> >>>> Comment pourrais-je faire ? >>>> >>>> Il existe bien des OCX comme MenuXP, mas je ne voudrais pas mettre >>>> d'OCX dans mo programme. >>>> >>>> Merci. >>> >>> >>> -- >>> n'oubliez pas les FAQ : >>> http://www.excelabo.net http://dj.joss.free.fr/faq.htm >>> http://www.faqoe.com http://faqword.free.fr >>> -- >>> Feed Back >>> http://viadresse.com/?94912042 >>> >>> >> >> >> > Effectivement on retombe dans le subclassing pour ne l'appliquer qu'à > ton application. > C'est à dire activation lorsque tu as la main et desctivation lorsque tu > la perd > un peu délicat à gerer mais faisable.
Je viens de retrouver le bout de code qui fait cela sur
http://megaten.alterlinks.fr ===> Color_SB_PB_MB ( Color StatusBar,
ProgressBar et MenuBar )
juste un exercice de style ( pas tres stable ) que je ne recommande pas
pour une appli pro.
J'irai faire un petit tour...
Merci.
"Michel" <mrodenas@iFrance.com> a écrit dans le message de
news:qumPe.26920$hV3.10700@nntpserver.swip.net...
Michel a écrit :
> Guy DETIENNE a écrit :
>
>> Salut ;O)
>>
>> Cette solution me semble inadaptée à partir du moment où tout le
>> système est
>> impacté.
>> J'imagine mal développer un soft qui changerait l'apparence du Windows
le
>> temps de l'exécution de celui-ci.
>> Et si le soft plante ? Comme tu le dis, la procédure de remise à la
>> normale
>> des couleurs ne sera pas exécutée... Pas convaincant du tout.
>>
>> Guy
>>
>> "Modeste" <nomail@nomail.net> a écrit dans le message de
>> news:uzo0MsWqFHA.3720@TK2MSFTNGP14.phx.gbl...
>>
>>> Bonsour® Fr@d
>>> il est possible via les API windows
>>> de changer les couleurs de tout les eléments affichés.
>>> !!!!!!!!!!!! attention cela s'applique à tout l'environnement
windows.
>>> !!!!!!!!!
>>> il faut donc mémoriser les couleurs avant exécution de ton
application,
>>
>>
>> pour
>>
>>> pouvoir les restituer lorsque que tu la quitte...
>>> avec le risque de sortie imprévue !!!
>>>
>>>
>>> des exemples d'utilisation des API là :
>>> 'KPD-Team 1999
>>> 'URL: http://www.allapi.net/
>>> notament :
>>> API-Guide download
>>> API-Guide 3.7 (+/- 2.20MB)(*)
>>> http://users.chello.be/cr27630/3.7/agsetup.exe
>>>
>>> dont cet exemple à utiliser et modifier avec prudence ;o)))
>>>
>>> Const COLOR_SCROLLBAR = 0
>>> Const COLOR_BACKGROUND = 1
>>> Const COLOR_ACTIVECAPTION = 2
>>> Const COLOR_INACTIVECAPTION = 3
>>> Const COLOR_MENU = 4
>>> Const COLOR_WINDOW = 5
>>> Const COLOR_WINDOWFRAME = 6
>>> Const COLOR_MENUTEXT = 7
>>> Const COLOR_WINDOWTEXT = 8
>>> Const COLOR_CAPTIONTEXT = 9
>>> Const COLOR_ACTIVEBORDER = 10
>>> Const COLOR_INACTIVEBORDER = 11
>>> Const COLOR_APPWORKSPACE = 12
>>> Const COLOR_HIGHLIGHT = 13
>>> Const COLOR_HIGHLIGHTTEXT = 14
>>> Const COLOR_BTNFACE = 15
>>> Const COLOR_BTNSHADOW = 16
>>> Const COLOR_GRAYTEXT = 17
>>> Const COLOR_BTNTEXT = 18
>>> Private Declare Function GetSysColor Lib "user32" (ByVal nIndex As
Long)
>>
>>
>> As
>>
>>> Long
>>> Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As
>>
>>
>> Long,
>>
>>> lpSysColor As Long, lpColorValues As Long) As Long
>>> Dim SavedColors(18) As Long, IndexArray(18) As Long, NewColors(18) As
>>> Long
>>> Private Sub Form_Load()
>>> 'KPD-Team 1999
>>> 'URL: http://www.allapi.net/
>>> 'E-Mail: KPDTeam@Allapi.net
>>> ' Save current system colors:
>>> For i = 0 To 18
>>> SavedColors(i) = GetSysColor(i)
>>> Next i
>>> ' Change all display elements:
>>> For i = 0 To 18
>>> Randomize Timer
>>> NewColors(i) = RGB(Rnd * 255, Rnd * 255, Rnd * 255)
>>> IndexArray(i) = i
>>> Next i
>>> SetSysColors 19, IndexArray(0), NewColors(0)
>>> End Sub
>>> Private Sub Form_Unload(Cancel As Integer)
>>> ' Restore system colors:
>>> SetSysColors 19, IndexArray(0), SavedColors(0)
>>> End Sub
>>>
>>> wrote:
>>>
>>>> Bonjour,
>>>>
>>>> Je voudrais changer la couleur des menus de mon programme, mais
>>>> l'option Backcolor n'existe pas pour les menus !
>>>>
>>>> Comment pourrais-je faire ?
>>>>
>>>> Il existe bien des OCX comme MenuXP, mas je ne voudrais pas mettre
>>>> d'OCX dans mo programme.
>>>>
>>>> Merci.
>>>
>>>
>>> --
>>> n'oubliez pas les FAQ :
>>> http://www.excelabo.net http://dj.joss.free.fr/faq.htm
>>> http://www.faqoe.com http://faqword.free.fr
>>> --
>>> Feed Back
>>> http://viadresse.com/?94912042
>>>
>>>
>>
>>
>>
> Effectivement on retombe dans le subclassing pour ne l'appliquer qu'à
> ton application.
> C'est à dire activation lorsque tu as la main et desctivation lorsque tu
> la perd
> un peu délicat à gerer mais faisable.
Je viens de retrouver le bout de code qui fait cela sur
http://megaten.alterlinks.fr ===> Color_SB_PB_MB ( Color StatusBar,
ProgressBar et MenuBar )
juste un exercice de style ( pas tres stable ) que je ne recommande pas
"Michel" a écrit dans le message de news:qumPe.26920$
Michel a écrit : > Guy DETIENNE a écrit : > >> Salut ;O) >> >> Cette solution me semble inadaptée à partir du moment où tout le >> système est >> impacté. >> J'imagine mal développer un soft qui changerait l'apparence du Windows
le
>> temps de l'exécution de celui-ci. >> Et si le soft plante ? Comme tu le dis, la procédure de remise à la >> normale >> des couleurs ne sera pas exécutée... Pas convaincant du tout. >> >> Guy >> >> "Modeste" a écrit dans le message de >> news: >> >>> Bonsour® >>> il est possible via les API windows >>> de changer les couleurs de tout les eléments affichés. >>> !!!!!!!!!!!! attention cela s'applique à tout l'environnement
windows.
>>> !!!!!!!!! >>> il faut donc mémoriser les couleurs avant exécution de ton
application,
>> >> >> pour >> >>> pouvoir les restituer lorsque que tu la quitte... >>> avec le risque de sortie imprévue !!! >>> >>> >>> des exemples d'utilisation des API là : >>> 'KPD-Team 1999 >>> 'URL: http://www.allapi.net/ >>> notament : >>> API-Guide download >>> API-Guide 3.7 (+/- 2.20MB)(*) >>> http://users.chello.be/cr27630/3.7/agsetup.exe >>> >>> dont cet exemple à utiliser et modifier avec prudence ;o))) >>> >>> Const COLOR_SCROLLBAR = 0 >>> Const COLOR_BACKGROUND = 1 >>> Const COLOR_ACTIVECAPTION = 2 >>> Const COLOR_INACTIVECAPTION = 3 >>> Const COLOR_MENU = 4 >>> Const COLOR_WINDOW = 5 >>> Const COLOR_WINDOWFRAME = 6 >>> Const COLOR_MENUTEXT = 7 >>> Const COLOR_WINDOWTEXT = 8 >>> Const COLOR_CAPTIONTEXT = 9 >>> Const COLOR_ACTIVEBORDER = 10 >>> Const COLOR_INACTIVEBORDER = 11 >>> Const COLOR_APPWORKSPACE = 12 >>> Const COLOR_HIGHLIGHT = 13 >>> Const COLOR_HIGHLIGHTTEXT = 14 >>> Const COLOR_BTNFACE = 15 >>> Const COLOR_BTNSHADOW = 16 >>> Const COLOR_GRAYTEXT = 17 >>> Const COLOR_BTNTEXT = 18 >>> Private Declare Function GetSysColor Lib "user32" (ByVal nIndex As
Long)
>> >> >> As >> >>> Long >>> Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As >> >> >> Long, >> >>> lpSysColor As Long, lpColorValues As Long) As Long >>> Dim SavedColors(18) As Long, IndexArray(18) As Long, NewColors(18) As >>> Long >>> Private Sub Form_Load() >>> 'KPD-Team 1999 >>> 'URL: http://www.allapi.net/ >>> 'E-Mail: >>> ' Save current system colors: >>> For i = 0 To 18 >>> SavedColors(i) = GetSysColor(i) >>> Next i >>> ' Change all display elements: >>> For i = 0 To 18 >>> Randomize Timer >>> NewColors(i) = RGB(Rnd * 255, Rnd * 255, Rnd * 255) >>> IndexArray(i) = i >>> Next i >>> SetSysColors 19, IndexArray(0), NewColors(0) >>> End Sub >>> Private Sub Form_Unload(Cancel As Integer) >>> ' Restore system colors: >>> SetSysColors 19, IndexArray(0), SavedColors(0) >>> End Sub >>> >>> wrote: >>> >>>> Bonjour, >>>> >>>> Je voudrais changer la couleur des menus de mon programme, mais >>>> l'option Backcolor n'existe pas pour les menus ! >>>> >>>> Comment pourrais-je faire ? >>>> >>>> Il existe bien des OCX comme MenuXP, mas je ne voudrais pas mettre >>>> d'OCX dans mo programme. >>>> >>>> Merci. >>> >>> >>> -- >>> n'oubliez pas les FAQ : >>> http://www.excelabo.net http://dj.joss.free.fr/faq.htm >>> http://www.faqoe.com http://faqword.free.fr >>> -- >>> Feed Back >>> http://viadresse.com/?94912042 >>> >>> >> >> >> > Effectivement on retombe dans le subclassing pour ne l'appliquer qu'à > ton application. > C'est à dire activation lorsque tu as la main et desctivation lorsque tu > la perd > un peu délicat à gerer mais faisable.
Je viens de retrouver le bout de code qui fait cela sur
http://megaten.alterlinks.fr ===> Color_SB_PB_MB ( Color StatusBar,
ProgressBar et MenuBar )
juste un exercice de style ( pas tres stable ) que je ne recommande pas
pour une appli pro.
Modeste
Bonsour® Guy nous sommes bien d'accord... a quoi sert de modifier IHM d'une application ??? l'interface standard Windows est-il si décevant ??? ;o)) -- n'oubliez pas les FAQ : http://www.excelabo.net http://dj.joss.free.fr/faq.htm http://www.faqoe.com http://faqword.free.fr -- Feed Back http://viadresse.com/?94912042
Bonsour® Guy
nous sommes bien d'accord...
a quoi sert de modifier IHM d'une application ??? l'interface standard
Windows est-il si décevant ???
;o))
--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042
Bonsour® Guy nous sommes bien d'accord... a quoi sert de modifier IHM d'une application ??? l'interface standard Windows est-il si décevant ??? ;o)) -- n'oubliez pas les FAQ : http://www.excelabo.net http://dj.joss.free.fr/faq.htm http://www.faqoe.com http://faqword.free.fr -- Feed Back http://viadresse.com/?94912042