Forms skinnables style widget (vb2005)

Description

Fenêtre skinnable en Visual Basic 2005.

Permet l'affichage de Fenêtres à partir de fichiers png, permettant une transparence par pixel, avec des dégradés de transparences.

Merci à Pym Corp pour son code à partir duquel j'ai commencé à travailler.

On peut changer l'opacité générale, et le redimensionnement peut se faire en prenant en compte des marges dans lesquelles l'image originale ne sera pas modifiée (Smart Resize).
Cela permet d'afficher des panneaux à n'importe quelle taille sans que les bords soient déformés.

Les propriétés suivantes de la classe Form héritée ont été surchargées :
- Width, Height et Size
- Opacity
- BackgroundImage

Source / Exemple :


' =====================================================
' Source dans le zip (projet Visual Basic 2005 Express)
' =====================================================
'
Lancez le projet dans le débogueur de VB2005. Tous les réglages se font dans la fenêtre de réglage qu'il suffit de fermer pour terminer l'application.

Pour utiliser Smart Resize, il vaut mieux avoir une image d'allure générale rectangulaire (par exemple BlackGlass---Single-Panel.png dans \bin\debug\exemples).

Conclusion :


Cette form peut servir de base à toute application "skinnable". Elle est dans la source appelée par une autre fenêtre, mai rien n'empeche de s'en servir comme mainform (attention de prévoir au moins une fermeture par menu...).

Le problème, auquel je vais m'atteler, c'est que la fenêtre transparente se dessine au dessus des contrôles que l'on y aurait déposés. Pour l'instant, il faut donc employer une autre fenêtre, totalement transparente, au dessus de notre fenêtre skinnable et liée par code à celle-çi, ou bien implementer la totalité des contrôles par code (ouch...)

Je vais continuer à travailler là dessus, et nottament sur la possibilité d'y ajouter des contrôles de manière graphique, dans l'éditeur de formulaires.

Je modifierais la source présente ici au fil de l'évolution...

@ +, et un grand merci à PymCorp

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.