Compact Framework [Résolu]

cs_aymen87 109 Messages postés samedi 3 novembre 2007Date d'inscription 4 février 2016 Dernière intervention - 19 févr. 2013 à 17:20 - Dernière réponse : yann_lo_san 1137 Messages postés lundi 17 novembre 2003Date d'inscription 23 janvier 2016 Dernière intervention
- 26 févr. 2013 à 20:05
Bonjour

Je travaille sur l'interface graphique d'une application, un parmi les screens contient un Tabcontrol avec plusieurs pages, j'aimerai mettre une background image au lieu d'une des couleurs unique qu'offre les propriétés.y a-t-il une manière d'ajouter cette propriétés ???
Merci beaucoup
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
yann_lo_san 1137 Messages postés lundi 17 novembre 2003Date d'inscription 23 janvier 2016 Dernière intervention - 20 févr. 2013 à 13:05
3
Merci
Re,

ok,

alors 2 solutions :
Récupérer le Graphics de la page via CreateCraphics puis dessiner dessus lors des appels à DrawItem si mode "OwnerDraw" ou lors des appels à OnPaint du parent. (formulaire ou TabControl ça dépends du paramétrage "Child control" ou non)

Tu peux aussi créer une classe dérivée de TabPages (TabPagesImage) avec overrides du OnPaint et ajouter tes propres TabPagesImage à la place des TabPages de base.
TabControl1.AddPage( monTabPagesImage );
ou un truc dans le style...

bye...

Merci yann_lo_san 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de yann_lo_san
Meilleure réponse
cs_aymen87 109 Messages postés samedi 3 novembre 2007Date d'inscription 4 février 2016 Dernière intervention - 26 févr. 2013 à 10:19
3
Merci
re j'ai trouvé une solution mais j'ai oublié de poster la réponse, Merci yann_lo_san tu m'as donné une indication ;)
cette petite classe fait l'affaire ensuite no declare la page onglet en tant que TabPageWithBackground.

 
public class TabPageWithBackground : TabPage
    {
        private Rectangle _backgroundRect;
        private Bitmap _background;

         public TabPageWithBackground()
        {
            _background = Resource1.ImageBackground;
            _backgroundRect = new Rectangle(0, 0, _background.Width, _background.Height);
            this.Size = new System.Drawing.Size(100, 20);
        }


        protected override void OnPaintBackground(PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            g.DrawImage(_background, this.ClientRectangle, _backgroundRect, GraphicsUnit.Pixel);
        }
    }

Merci cs_aymen87 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_aymen87
yann_lo_san 1137 Messages postés lundi 17 novembre 2003Date d'inscription 23 janvier 2016 Dernière intervention - 19 févr. 2013 à 21:39
0
Merci
Salut,

ben tu peux simplement afficher ton image sur la page voulue ?

// gloable
Image _img = null;

// form load
_img = new Bitmap("imgNimporteQuelleTaille.jpg");

// Affiche image sur page 3 du tabControl
tabControl1.TabPages[2].BackgroundImage = _img;



c'est tout.

bye...
Commenter la réponse de yann_lo_san
cs_aymen87 109 Messages postés samedi 3 novembre 2007Date d'inscription 4 février 2016 Dernière intervention - 20 févr. 2013 à 10:39
0
Merci
Bonjour yann_lo_san, merci pour ta réponse
le problème c'est que je travaille sur le compact framework, qui est dédié pour les device windows mobile, il est restreint en terme de fonction, il n'offre pas donc la propriété BackgroundImage, on peut juste modifier le backgroundColor
Commenter la réponse de cs_aymen87
yann_lo_san 1137 Messages postés lundi 17 novembre 2003Date d'inscription 23 janvier 2016 Dernière intervention - 26 févr. 2013 à 20:05
0
Merci
Salut,

c'est nickel ça.

Bonne continuation...
Commenter la réponse de yann_lo_san

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.