Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment appliquer les dégradés dans une toolbar comme dans word 2003 par ex ?

7 réponses
Avatar
Bull
Bonjour, j'aimerais savoir comment appliquer les dégradés pour le fond d'une
toolbar comme dans word par ex en fonction du thème employé par windows ?

Par ex :
Word 2003 - thème windows xp bleu
http://img33.exs.cx/img33/7201/Capture003.jpg

Word 2003 - thème windows xp vert olive
http://img33.exs.cx/img33/6227/Capture004.jpg

Word 2003 - thème windows xp gris
http://img33.exs.cx/img33/4817/Capture005.jpg

Merci d'avance
Bull

7 réponses

Avatar
AlexL [Xceed]
Pour te sauver du temps, notre produit, Xceed SmartUI for .NET, fait
cela automatiquement pour toi. De plus, le toolbar est assez avancé en
fonctionalités. Tu pourra résoudre ton besoin assez rapidement.

http://www.xceedsoft.com/products/smartnet

Description en Francais: Xceed SmartUI for .NET offre aux développeurs
les contrôles visuels indispensables pour créer rapidement et
facilement des applications Windows Forms modernes et conviviales de
style Windows XP, Office XP et maintenant, Office 2003. Il inclut les
contrôles MenuBars, ToolBars, Treeviews, OutlookBars, Explorer bar /
task pane, StatusBars, OptionLists, TabStrips, Office task pane et
ListBoxes. De plus, le designer WYSIWYG permet au développeur
d'évaluer sur-le-champ son interface utilisateur.

On Sun, 12 Sep 2004 13:08:18 +0200, "Bull" wrote:

Bonjour, j'aimerais savoir comment appliquer les dégradés pour le fond d'une
toolbar comme dans word par ex en fonction du thème employé par windows ?

Par ex :
Word 2003 - thème windows xp bleu
http://img33.exs.cx/img33/7201/Capture003.jpg

Word 2003 - thème windows xp vert olive
http://img33.exs.cx/img33/6227/Capture004.jpg

Word 2003 - thème windows xp gris
http://img33.exs.cx/img33/4817/Capture005.jpg

Merci d'avance
Bull





--
Alex Leblanc
Xceed Software Inc.
http://www.xceedsoft.com

Check out our advanced .NET grid and SmartUI controls

Email: (remove the first 'x')
Avatar
Guy DETIENNE
Faut-il encore débourser la modique somme de $349.95

Ca lui sauvera certes du temps, mais pas de l'argent...

Un forum n'est pas fait pour y faire de la pub !!!

Guy


"AlexL [Xceed]" a écrit dans le message de news:

Pour te sauver du temps, notre produit, Xceed SmartUI for .NET, fait
cela automatiquement pour toi. De plus, le toolbar est assez avancé en
fonctionalités. Tu pourra résoudre ton besoin assez rapidement.

http://www.xceedsoft.com/products/smartnet

Description en Francais: Xceed SmartUI for .NET offre aux développeurs
les contrôles visuels indispensables pour créer rapidement et
facilement des applications Windows Forms modernes et conviviales de
style Windows XP, Office XP et maintenant, Office 2003. Il inclut les
contrôles MenuBars, ToolBars, Treeviews, OutlookBars, Explorer bar /
task pane, StatusBars, OptionLists, TabStrips, Office task pane et
ListBoxes. De plus, le designer WYSIWYG permet au développeur
d'évaluer sur-le-champ son interface utilisateur.

On Sun, 12 Sep 2004 13:08:18 +0200, "Bull" wrote:

Bonjour, j'aimerais savoir comment appliquer les dégradés pour le fond
d'une
toolbar comme dans word par ex en fonction du thème employé par windows ?

Par ex :
Word 2003 - thème windows xp bleu
http://img33.exs.cx/img33/7201/Capture003.jpg

Word 2003 - thème windows xp vert olive
http://img33.exs.cx/img33/6227/Capture004.jpg

Word 2003 - thème windows xp gris
http://img33.exs.cx/img33/4817/Capture005.jpg

Merci d'avance
Bull





--
Alex Leblanc
Xceed Software Inc.
http://www.xceedsoft.com

Check out our advanced .NET grid and SmartUI controls

Email: (remove the first 'x')


Avatar
David Bouchard
Salut, voici une petite exemple pas trop détaillé mais qui te montre un peu
ce que tu peux faire. Tu n'as tout simplement qu'a te créer une classe
héritant de la class Toolbar et tu overrides la procédure OnPaint . N'oublie
pas les setstyles dans le constructeur si tu veux un beau rendu. Bien sur,
il y a surement place à amélioration mais disons que ca peut te donner une
bonne idée pour faire quelque chose avec ceci. Pour ce qui est de
l'enlignement du texte, regarde avec le stringformat et tu pourra le placé
ou tu veux, tu peux aussi rajouter un icone en utilisant drawimage. De toute
facon, fait moi signe si tu veux plus d'aide.

Public Class Super_ToolBar

Inherits ToolBar

Sub New()

Me.SetStyle(ControlStyles.AllPaintingInWmPaint, False)

Me.SetStyle(ControlStyles.UserPaint, True)

Me.SetStyle(ControlStyles.ResizeRedraw, True)

Me.SetStyle(ControlStyles.DoubleBuffer, True)

End Sub

Protected Overrides Sub OnPaint(ByVal e As
System.Windows.Forms.PaintEventArgs)

Dim Grad_Brush_ToolBar As New
Drawing2D.LinearGradientBrush(Me.DisplayRectangle, Color.LightGray,
Color.White, Drawing2D.LinearGradientMode.Vertical)

Dim graphic As Graphics = Graphics.FromHwnd(Me.Handle)

graphic.FillRectangle(Grad_Brush_ToolBar, Me.DisplayRectangle)

For Each b As ToolBarButton In Me.Buttons

Dim Rect_Button As RectangleF = New RectangleF(b.Rectangle.X, b.Rectangle.Y,
b.Rectangle.Width, b.Rectangle.Height)

Dim Grad_Brush_Button As New Drawing2D.LinearGradientBrush(Rect_Button,
Color.LightGray, Color.White, Drawing2D.LinearGradientMode.Vertical)

graphic.FillRectangle(Grad_Brush_Button, Rect_Button)

graphic.DrawRectangle(Pens.Black, b.Rectangle)

graphic.DrawString(b.Text, New Font("Arial", 10, FontStyle.Bold),
Brushes.Black, Rect_Button)

Grad_Brush_Button.Dispose()

Next

Grad_Brush_ToolBar.Dispose()

graphic.Dispose()

End Sub

End Class



Bonne chance

David







"Guy DETIENNE" a écrit dans le message de
news:
Faut-il encore débourser la modique somme de $349.95

Ca lui sauvera certes du temps, mais pas de l'argent...

Un forum n'est pas fait pour y faire de la pub !!!

Guy


"AlexL [Xceed]" a écrit dans le message de news:

> Pour te sauver du temps, notre produit, Xceed SmartUI for .NET, fait
> cela automatiquement pour toi. De plus, le toolbar est assez avancé en
> fonctionalités. Tu pourra résoudre ton besoin assez rapidement.
>
> http://www.xceedsoft.com/products/smartnet
>
> Description en Francais: Xceed SmartUI for .NET offre aux développeurs
> les contrôles visuels indispensables pour créer rapidement et
> facilement des applications Windows Forms modernes et conviviales de
> style Windows XP, Office XP et maintenant, Office 2003. Il inclut les
> contrôles MenuBars, ToolBars, Treeviews, OutlookBars, Explorer bar /
> task pane, StatusBars, OptionLists, TabStrips, Office task pane et
> ListBoxes. De plus, le designer WYSIWYG permet au développeur
> d'évaluer sur-le-champ son interface utilisateur.
>
> On Sun, 12 Sep 2004 13:08:18 +0200, "Bull" wrote:
>
>>Bonjour, j'aimerais savoir comment appliquer les dégradés pour le fond
>>d'une
>>toolbar comme dans word par ex en fonction du thème employé par windows


?
>>
>>Par ex :
>>Word 2003 - thème windows xp bleu
>>http://img33.exs.cx/img33/7201/Capture003.jpg
>>
>>Word 2003 - thème windows xp vert olive
>>http://img33.exs.cx/img33/6227/Capture004.jpg
>>
>>Word 2003 - thème windows xp gris
>>http://img33.exs.cx/img33/4817/Capture005.jpg
>>
>>Merci d'avance
>>Bull
>>
>>
>
> --
> Alex Leblanc
> Xceed Software Inc.
> http://www.xceedsoft.com
>
> Check out our advanced .NET grid and SmartUI controls
>
> Email: (remove the first 'x')




Avatar
Bull
Merci beaucoup, avec ton code je vais pouvoir faire des effets gradients en
fond de ma barre d'outil.

Par contre, j'ai un petit problème, en utilisant ce code, je ne vois plus
les images de mes boutons (mais les boutons sont bien là). Comment cela se
fait-il ?

Merci
Bull


"David Bouchard" a écrit dans le message de news:

Salut, voici une petite exemple pas trop détaillé mais qui te montre un
peu
ce que tu peux faire. Tu n'as tout simplement qu'a te créer une classe
héritant de la class Toolbar et tu overrides la procédure OnPaint .
N'oublie
pas les setstyles dans le constructeur si tu veux un beau rendu. Bien sur,
il y a surement place à amélioration mais disons que ca peut te donner une
bonne idée pour faire quelque chose avec ceci. Pour ce qui est de
l'enlignement du texte, regarde avec le stringformat et tu pourra le placé
ou tu veux, tu peux aussi rajouter un icone en utilisant drawimage. De
toute
facon, fait moi signe si tu veux plus d'aide.

Public Class Super_ToolBar

Inherits ToolBar

Sub New()

Me.SetStyle(ControlStyles.AllPaintingInWmPaint, False)

Me.SetStyle(ControlStyles.UserPaint, True)

Me.SetStyle(ControlStyles.ResizeRedraw, True)

Me.SetStyle(ControlStyles.DoubleBuffer, True)

End Sub

Protected Overrides Sub OnPaint(ByVal e As
System.Windows.Forms.PaintEventArgs)

Dim Grad_Brush_ToolBar As New
Drawing2D.LinearGradientBrush(Me.DisplayRectangle, Color.LightGray,
Color.White, Drawing2D.LinearGradientMode.Vertical)

Dim graphic As Graphics = Graphics.FromHwnd(Me.Handle)

graphic.FillRectangle(Grad_Brush_ToolBar, Me.DisplayRectangle)

For Each b As ToolBarButton In Me.Buttons

Dim Rect_Button As RectangleF = New RectangleF(b.Rectangle.X,
b.Rectangle.Y,
b.Rectangle.Width, b.Rectangle.Height)

Dim Grad_Brush_Button As New Drawing2D.LinearGradientBrush(Rect_Button,
Color.LightGray, Color.White, Drawing2D.LinearGradientMode.Vertical)

graphic.FillRectangle(Grad_Brush_Button, Rect_Button)

graphic.DrawRectangle(Pens.Black, b.Rectangle)

graphic.DrawString(b.Text, New Font("Arial", 10, FontStyle.Bold),
Brushes.Black, Rect_Button)

Grad_Brush_Button.Dispose()

Next

Grad_Brush_ToolBar.Dispose()

graphic.Dispose()

End Sub

End Class



Bonne chance

David







"Guy DETIENNE" a écrit dans le message de
news:
Faut-il encore débourser la modique somme de $349.95

Ca lui sauvera certes du temps, mais pas de l'argent...

Un forum n'est pas fait pour y faire de la pub !!!

Guy


"AlexL [Xceed]" a écrit dans le message de
news:

> Pour te sauver du temps, notre produit, Xceed SmartUI for .NET, fait
> cela automatiquement pour toi. De plus, le toolbar est assez avancé en
> fonctionalités. Tu pourra résoudre ton besoin assez rapidement.
>
> http://www.xceedsoft.com/products/smartnet
>
> Description en Francais: Xceed SmartUI for .NET offre aux développeurs
> les contrôles visuels indispensables pour créer rapidement et
> facilement des applications Windows Forms modernes et conviviales de
> style Windows XP, Office XP et maintenant, Office 2003. Il inclut les
> contrôles MenuBars, ToolBars, Treeviews, OutlookBars, Explorer bar /
> task pane, StatusBars, OptionLists, TabStrips, Office task pane et
> ListBoxes. De plus, le designer WYSIWYG permet au développeur
> d'évaluer sur-le-champ son interface utilisateur.
>
> On Sun, 12 Sep 2004 13:08:18 +0200, "Bull" wrote:
>
>>Bonjour, j'aimerais savoir comment appliquer les dégradés pour le fond
>>d'une
>>toolbar comme dans word par ex en fonction du thème employé par windows


?
>>
>>Par ex :
>>Word 2003 - thème windows xp bleu
>>http://img33.exs.cx/img33/7201/Capture003.jpg
>>
>>Word 2003 - thème windows xp vert olive
>>http://img33.exs.cx/img33/6227/Capture004.jpg
>>
>>Word 2003 - thème windows xp gris
>>http://img33.exs.cx/img33/4817/Capture005.jpg
>>
>>Merci d'avance
>>Bull
>>
>>
>
> --
> Alex Leblanc
> Xceed Software Inc.
> http://www.xceedsoft.com
>
> Check out our advanced .NET grid and SmartUI controls
>
> Email: (remove the first 'x')








Avatar
David Bouchard
En faite, c'est que tu dois redessiner absolument tout de ce control. Donc,
si tu veux redessiner les images de la tool bar, tu dois ajouter ceci

If b.ImageIndex >= 0 Then

graphic.DrawImage(Me.ImageList.Images(b.ImageIndex), b.Rectangle)

End If

Par contre, de cette facon, l'image sera dessiner sur toute la surface du
bouton, donc, si tu veux que celle-ci soi à une endroit précise, tu devras
jouer avec le rectangle qui permet de dessiner l'image.

David

"Bull" a écrit dans le message de
news:
Merci beaucoup, avec ton code je vais pouvoir faire des effets gradients


en
fond de ma barre d'outil.

Par contre, j'ai un petit problème, en utilisant ce code, je ne vois plus
les images de mes boutons (mais les boutons sont bien là). Comment cela se
fait-il ?

Merci
Bull


"David Bouchard" a écrit dans le message de


news:

> Salut, voici une petite exemple pas trop détaillé mais qui te montre un
> peu
> ce que tu peux faire. Tu n'as tout simplement qu'a te créer une classe
> héritant de la class Toolbar et tu overrides la procédure OnPaint .
> N'oublie
> pas les setstyles dans le constructeur si tu veux un beau rendu. Bien


sur,
> il y a surement place à amélioration mais disons que ca peut te donner


une
> bonne idée pour faire quelque chose avec ceci. Pour ce qui est de
> l'enlignement du texte, regarde avec le stringformat et tu pourra le


placé
> ou tu veux, tu peux aussi rajouter un icone en utilisant drawimage. De
> toute
> facon, fait moi signe si tu veux plus d'aide.
>
> Public Class Super_ToolBar
>
> Inherits ToolBar
>
> Sub New()
>
> Me.SetStyle(ControlStyles.AllPaintingInWmPaint, False)
>
> Me.SetStyle(ControlStyles.UserPaint, True)
>
> Me.SetStyle(ControlStyles.ResizeRedraw, True)
>
> Me.SetStyle(ControlStyles.DoubleBuffer, True)
>
> End Sub
>
> Protected Overrides Sub OnPaint(ByVal e As
> System.Windows.Forms.PaintEventArgs)
>
> Dim Grad_Brush_ToolBar As New
> Drawing2D.LinearGradientBrush(Me.DisplayRectangle, Color.LightGray,
> Color.White, Drawing2D.LinearGradientMode.Vertical)
>
> Dim graphic As Graphics = Graphics.FromHwnd(Me.Handle)
>
> graphic.FillRectangle(Grad_Brush_ToolBar, Me.DisplayRectangle)
>
> For Each b As ToolBarButton In Me.Buttons
>
> Dim Rect_Button As RectangleF = New RectangleF(b.Rectangle.X,
> b.Rectangle.Y,
> b.Rectangle.Width, b.Rectangle.Height)
>
> Dim Grad_Brush_Button As New Drawing2D.LinearGradientBrush(Rect_Button,
> Color.LightGray, Color.White, Drawing2D.LinearGradientMode.Vertical)
>
> graphic.FillRectangle(Grad_Brush_Button, Rect_Button)
>
> graphic.DrawRectangle(Pens.Black, b.Rectangle)
>
> graphic.DrawString(b.Text, New Font("Arial", 10, FontStyle.Bold),
> Brushes.Black, Rect_Button)
>
> Grad_Brush_Button.Dispose()
>
> Next
>
> Grad_Brush_ToolBar.Dispose()
>
> graphic.Dispose()
>
> End Sub
>
> End Class
>
>
>
> Bonne chance
>
> David
>
>
>
>
>
>
>
> "Guy DETIENNE" a écrit dans le message de
> news:
>> Faut-il encore débourser la modique somme de $349.95
>>
>> Ca lui sauvera certes du temps, mais pas de l'argent...
>>
>> Un forum n'est pas fait pour y faire de la pub !!!
>>
>> Guy
>>
>>
>> "AlexL [Xceed]" a écrit dans le message de
>> news:
>>
>> > Pour te sauver du temps, notre produit, Xceed SmartUI for .NET, fait
>> > cela automatiquement pour toi. De plus, le toolbar est assez avancé


en
>> > fonctionalités. Tu pourra résoudre ton besoin assez rapidement.
>> >
>> > http://www.xceedsoft.com/products/smartnet
>> >
>> > Description en Francais: Xceed SmartUI for .NET offre aux


développeurs
>> > les contrôles visuels indispensables pour créer rapidement et
>> > facilement des applications Windows Forms modernes et conviviales de
>> > style Windows XP, Office XP et maintenant, Office 2003. Il inclut les
>> > contrôles MenuBars, ToolBars, Treeviews, OutlookBars, Explorer bar /
>> > task pane, StatusBars, OptionLists, TabStrips, Office task pane et
>> > ListBoxes. De plus, le designer WYSIWYG permet au développeur
>> > d'évaluer sur-le-champ son interface utilisateur.
>> >
>> > On Sun, 12 Sep 2004 13:08:18 +0200, "Bull"


wrote:
>> >
>> >>Bonjour, j'aimerais savoir comment appliquer les dégradés pour le


fond
>> >>d'une
>> >>toolbar comme dans word par ex en fonction du thème employé par


windows
> ?
>> >>
>> >>Par ex :
>> >>Word 2003 - thème windows xp bleu
>> >>http://img33.exs.cx/img33/7201/Capture003.jpg
>> >>
>> >>Word 2003 - thème windows xp vert olive
>> >>http://img33.exs.cx/img33/6227/Capture004.jpg
>> >>
>> >>Word 2003 - thème windows xp gris
>> >>http://img33.exs.cx/img33/4817/Capture005.jpg
>> >>
>> >>Merci d'avance
>> >>Bull
>> >>
>> >>
>> >
>> > --
>> > Alex Leblanc
>> > Xceed Software Inc.
>> > http://www.xceedsoft.com
>> >
>> > Check out our advanced .NET grid and SmartUI controls
>> >
>> > Email: (remove the first 'x')
>>
>>
>
>




Avatar
Bull
Ah ok merci beaucoup.

J'ai un tout dernier problème : lorsque je déplace ma souris (sans cliquer)
sur les boutons de ma barre d'outils les images "clignotent", comme si elles
disparaissaient et qu'elles réapparaissaient rapidement.
Sais-tu d'où vient ce pb ?

Désolé si mes questions sont un peu "basiques" mais c'est la première fois
que je modifie un controle existant déjà :)

Merci encore
Bull

"David Bouchard" a écrit dans le message de news:
%
En faite, c'est que tu dois redessiner absolument tout de ce control.
Donc,
si tu veux redessiner les images de la tool bar, tu dois ajouter ceci

If b.ImageIndex >= 0 Then

graphic.DrawImage(Me.ImageList.Images(b.ImageIndex), b.Rectangle)

End If

Par contre, de cette facon, l'image sera dessiner sur toute la surface du
bouton, donc, si tu veux que celle-ci soi à une endroit précise, tu devras
jouer avec le rectangle qui permet de dessiner l'image.

David

"Bull" a écrit dans le message de
news:
Merci beaucoup, avec ton code je vais pouvoir faire des effets gradients


en
fond de ma barre d'outil.

Par contre, j'ai un petit problème, en utilisant ce code, je ne vois plus
les images de mes boutons (mais les boutons sont bien là). Comment cela
se
fait-il ?

Merci
Bull


"David Bouchard" a écrit dans le message de


news:

> Salut, voici une petite exemple pas trop détaillé mais qui te montre un
> peu
> ce que tu peux faire. Tu n'as tout simplement qu'a te créer une classe
> héritant de la class Toolbar et tu overrides la procédure OnPaint .
> N'oublie
> pas les setstyles dans le constructeur si tu veux un beau rendu. Bien


sur,
> il y a surement place à amélioration mais disons que ca peut te donner


une
> bonne idée pour faire quelque chose avec ceci. Pour ce qui est de
> l'enlignement du texte, regarde avec le stringformat et tu pourra le


placé
> ou tu veux, tu peux aussi rajouter un icone en utilisant drawimage. De
> toute
> facon, fait moi signe si tu veux plus d'aide.
>
> Public Class Super_ToolBar
>
> Inherits ToolBar
>
> Sub New()
>
> Me.SetStyle(ControlStyles.AllPaintingInWmPaint, False)
>
> Me.SetStyle(ControlStyles.UserPaint, True)
>
> Me.SetStyle(ControlStyles.ResizeRedraw, True)
>
> Me.SetStyle(ControlStyles.DoubleBuffer, True)
>
> End Sub
>
> Protected Overrides Sub OnPaint(ByVal e As
> System.Windows.Forms.PaintEventArgs)
>
> Dim Grad_Brush_ToolBar As New
> Drawing2D.LinearGradientBrush(Me.DisplayRectangle, Color.LightGray,
> Color.White, Drawing2D.LinearGradientMode.Vertical)
>
> Dim graphic As Graphics = Graphics.FromHwnd(Me.Handle)
>
> graphic.FillRectangle(Grad_Brush_ToolBar, Me.DisplayRectangle)
>
> For Each b As ToolBarButton In Me.Buttons
>
> Dim Rect_Button As RectangleF = New RectangleF(b.Rectangle.X,
> b.Rectangle.Y,
> b.Rectangle.Width, b.Rectangle.Height)
>
> Dim Grad_Brush_Button As New Drawing2D.LinearGradientBrush(Rect_Button,
> Color.LightGray, Color.White, Drawing2D.LinearGradientMode.Vertical)
>
> graphic.FillRectangle(Grad_Brush_Button, Rect_Button)
>
> graphic.DrawRectangle(Pens.Black, b.Rectangle)
>
> graphic.DrawString(b.Text, New Font("Arial", 10, FontStyle.Bold),
> Brushes.Black, Rect_Button)
>
> Grad_Brush_Button.Dispose()
>
> Next
>
> Grad_Brush_ToolBar.Dispose()
>
> graphic.Dispose()
>
> End Sub
>
> End Class
>
>
>
> Bonne chance
>
> David
>
>
>
>
>
>
>
> "Guy DETIENNE" a écrit dans le message de
> news:
>> Faut-il encore débourser la modique somme de $349.95
>>
>> Ca lui sauvera certes du temps, mais pas de l'argent...
>>
>> Un forum n'est pas fait pour y faire de la pub !!!
>>
>> Guy
>>
>>
>> "AlexL [Xceed]" a écrit dans le message de
>> news:
>>
>> > Pour te sauver du temps, notre produit, Xceed SmartUI for .NET, fait
>> > cela automatiquement pour toi. De plus, le toolbar est assez avancé


en
>> > fonctionalités. Tu pourra résoudre ton besoin assez rapidement.
>> >
>> > http://www.xceedsoft.com/products/smartnet
>> >
>> > Description en Francais: Xceed SmartUI for .NET offre aux


développeurs
>> > les contrôles visuels indispensables pour créer rapidement et
>> > facilement des applications Windows Forms modernes et conviviales de
>> > style Windows XP, Office XP et maintenant, Office 2003. Il inclut
>> > les
>> > contrôles MenuBars, ToolBars, Treeviews, OutlookBars, Explorer bar /
>> > task pane, StatusBars, OptionLists, TabStrips, Office task pane et
>> > ListBoxes. De plus, le designer WYSIWYG permet au développeur
>> > d'évaluer sur-le-champ son interface utilisateur.
>> >
>> > On Sun, 12 Sep 2004 13:08:18 +0200, "Bull"


wrote:
>> >
>> >>Bonjour, j'aimerais savoir comment appliquer les dégradés pour le


fond
>> >>d'une
>> >>toolbar comme dans word par ex en fonction du thème employé par


windows
> ?
>> >>
>> >>Par ex :
>> >>Word 2003 - thème windows xp bleu
>> >>http://img33.exs.cx/img33/7201/Capture003.jpg
>> >>
>> >>Word 2003 - thème windows xp vert olive
>> >>http://img33.exs.cx/img33/6227/Capture004.jpg
>> >>
>> >>Word 2003 - thème windows xp gris
>> >>http://img33.exs.cx/img33/4817/Capture005.jpg
>> >>
>> >>Merci d'avance
>> >>Bull
>> >>
>> >>
>> >
>> > --
>> > Alex Leblanc
>> > Xceed Software Inc.
>> > http://www.xceedsoft.com
>> >
>> > Check out our advanced .NET grid and SmartUI controls
>> >
>> > Email: (remove the first 'x')
>>
>>
>
>








Avatar
David Bouchard
Regarde, peut-être que tu as un code lourd dans ta procédure OnMouseMove,
sinon, est-ce que tu as placé ces 4 lignes de code dans le contructeur
Me.SetStyle(ControlStyles.AllPaintingInWmPaint, False)

Me.SetStyle(ControlStyles.UserPaint, True)

Me.SetStyle(ControlStyles.ResizeRedraw, True)

Me.SetStyle(ControlStyles.DoubleBuffer, True)

Et si ce n'est pas ça, alors, je suis un peu embêté puisque ça ne fait pas
ça chez moi. Qu'elle type d'image à tu sur tes boutons, essaye de mettre un
format léger comme un .gif ou .ico. C'est vraiment l'idéal.

David



"Bull" a écrit dans le message de
news:
Ah ok merci beaucoup.

J'ai un tout dernier problème : lorsque je déplace ma souris (sans


cliquer)
sur les boutons de ma barre d'outils les images "clignotent", comme si


elles
disparaissaient et qu'elles réapparaissaient rapidement.
Sais-tu d'où vient ce pb ?

Désolé si mes questions sont un peu "basiques" mais c'est la première fois
que je modifie un controle existant déjà :)

Merci encore
Bull

"David Bouchard" a écrit dans le message de


news:
%
> En faite, c'est que tu dois redessiner absolument tout de ce control.
> Donc,
> si tu veux redessiner les images de la tool bar, tu dois ajouter ceci
>
> If b.ImageIndex >= 0 Then
>
> graphic.DrawImage(Me.ImageList.Images(b.ImageIndex), b.Rectangle)
>
> End If
>
> Par contre, de cette facon, l'image sera dessiner sur toute la surface


du
> bouton, donc, si tu veux que celle-ci soi à une endroit précise, tu


devras
> jouer avec le rectangle qui permet de dessiner l'image.
>
> David
>
> "Bull" a écrit dans le message de
> news:
>> Merci beaucoup, avec ton code je vais pouvoir faire des effets


gradients
> en
>> fond de ma barre d'outil.
>>
>> Par contre, j'ai un petit problème, en utilisant ce code, je ne vois


plus
>> les images de mes boutons (mais les boutons sont bien là). Comment cela
>> se
>> fait-il ?
>>
>> Merci
>> Bull
>>
>>
>> "David Bouchard" a écrit dans le message de
> news:
>>
>> > Salut, voici une petite exemple pas trop détaillé mais qui te montre


un
>> > peu
>> > ce que tu peux faire. Tu n'as tout simplement qu'a te créer une


classe
>> > héritant de la class Toolbar et tu overrides la procédure OnPaint .
>> > N'oublie
>> > pas les setstyles dans le constructeur si tu veux un beau rendu. Bien
> sur,
>> > il y a surement place à amélioration mais disons que ca peut te


donner
> une
>> > bonne idée pour faire quelque chose avec ceci. Pour ce qui est de
>> > l'enlignement du texte, regarde avec le stringformat et tu pourra le
> placé
>> > ou tu veux, tu peux aussi rajouter un icone en utilisant drawimage.


De
>> > toute
>> > facon, fait moi signe si tu veux plus d'aide.
>> >
>> > Public Class Super_ToolBar
>> >
>> > Inherits ToolBar
>> >
>> > Sub New()
>> >
>> > Me.SetStyle(ControlStyles.AllPaintingInWmPaint, False)
>> >
>> > Me.SetStyle(ControlStyles.UserPaint, True)
>> >
>> > Me.SetStyle(ControlStyles.ResizeRedraw, True)
>> >
>> > Me.SetStyle(ControlStyles.DoubleBuffer, True)
>> >
>> > End Sub
>> >
>> > Protected Overrides Sub OnPaint(ByVal e As
>> > System.Windows.Forms.PaintEventArgs)
>> >
>> > Dim Grad_Brush_ToolBar As New
>> > Drawing2D.LinearGradientBrush(Me.DisplayRectangle, Color.LightGray,
>> > Color.White, Drawing2D.LinearGradientMode.Vertical)
>> >
>> > Dim graphic As Graphics = Graphics.FromHwnd(Me.Handle)
>> >
>> > graphic.FillRectangle(Grad_Brush_ToolBar, Me.DisplayRectangle)
>> >
>> > For Each b As ToolBarButton In Me.Buttons
>> >
>> > Dim Rect_Button As RectangleF = New RectangleF(b.Rectangle.X,
>> > b.Rectangle.Y,
>> > b.Rectangle.Width, b.Rectangle.Height)
>> >
>> > Dim Grad_Brush_Button As New


Drawing2D.LinearGradientBrush(Rect_Button,
>> > Color.LightGray, Color.White, Drawing2D.LinearGradientMode.Vertical)
>> >
>> > graphic.FillRectangle(Grad_Brush_Button, Rect_Button)
>> >
>> > graphic.DrawRectangle(Pens.Black, b.Rectangle)
>> >
>> > graphic.DrawString(b.Text, New Font("Arial", 10, FontStyle.Bold),
>> > Brushes.Black, Rect_Button)
>> >
>> > Grad_Brush_Button.Dispose()
>> >
>> > Next
>> >
>> > Grad_Brush_ToolBar.Dispose()
>> >
>> > graphic.Dispose()
>> >
>> > End Sub
>> >
>> > End Class
>> >
>> >
>> >
>> > Bonne chance
>> >
>> > David
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > "Guy DETIENNE" a écrit dans le message de
>> > news:
>> >> Faut-il encore débourser la modique somme de $349.95
>> >>
>> >> Ca lui sauvera certes du temps, mais pas de l'argent...
>> >>
>> >> Un forum n'est pas fait pour y faire de la pub !!!
>> >>
>> >> Guy
>> >>
>> >>
>> >> "AlexL [Xceed]" a écrit dans le message de
>> >> news:
>> >>
>> >> > Pour te sauver du temps, notre produit, Xceed SmartUI for .NET,


fait
>> >> > cela automatiquement pour toi. De plus, le toolbar est assez


avancé
> en
>> >> > fonctionalités. Tu pourra résoudre ton besoin assez rapidement.
>> >> >
>> >> > http://www.xceedsoft.com/products/smartnet
>> >> >
>> >> > Description en Francais: Xceed SmartUI for .NET offre aux
> développeurs
>> >> > les contrôles visuels indispensables pour créer rapidement et
>> >> > facilement des applications Windows Forms modernes et conviviales


de
>> >> > style Windows XP, Office XP et maintenant, Office 2003. Il inclut
>> >> > les
>> >> > contrôles MenuBars, ToolBars, Treeviews, OutlookBars, Explorer bar


/
>> >> > task pane, StatusBars, OptionLists, TabStrips, Office task pane et
>> >> > ListBoxes. De plus, le designer WYSIWYG permet au développeur
>> >> > d'évaluer sur-le-champ son interface utilisateur.
>> >> >
>> >> > On Sun, 12 Sep 2004 13:08:18 +0200, "Bull"
> wrote:
>> >> >
>> >> >>Bonjour, j'aimerais savoir comment appliquer les dégradés pour le
> fond
>> >> >>d'une
>> >> >>toolbar comme dans word par ex en fonction du thème employé par
> windows
>> > ?
>> >> >>
>> >> >>Par ex :
>> >> >>Word 2003 - thème windows xp bleu
>> >> >>http://img33.exs.cx/img33/7201/Capture003.jpg
>> >> >>
>> >> >>Word 2003 - thème windows xp vert olive
>> >> >>http://img33.exs.cx/img33/6227/Capture004.jpg
>> >> >>
>> >> >>Word 2003 - thème windows xp gris
>> >> >>http://img33.exs.cx/img33/4817/Capture005.jpg
>> >> >>
>> >> >>Merci d'avance
>> >> >>Bull
>> >> >>
>> >> >>
>> >> >
>> >> > --
>> >> > Alex Leblanc
>> >> > Xceed Software Inc.
>> >> > http://www.xceedsoft.com
>> >> >
>> >> > Check out our advanced .NET grid and SmartUI controls
>> >> >
>> >> > Email: (remove the first 'x')
>> >>
>> >>
>> >
>> >
>>
>>
>
>