begin process at 2010 02 10 08:10:37
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

.NET

 > TABPAGE STYLE VS2005

TABPAGE STYLE VS2005


 Information sur la source

Note :
Aucune note
Catégorie :.NET Source .NET ( DotNet ) Classé sous :tabpage, sytle Niveau :Initié Date de création :22/12/2004 Date de mise à jour :29/12/2004 21:36:27 Vu / téléchargé :8 773 / 677

Auteur : geniusishere

Ecrire un message privé
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
un autre composant TabPage, mais au look TabPage VS2005, celui que l'on utilise dans les propriétés d'un projet sous Whidbey pour ceux qui connaissent.


 Conclusion

pour que le que le Designer fonctionne sous VisualStudio 2003, placer GeniusTab.design.dll sous C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE. c'est la manière la plus rapide pour que le designer soit prise en compte par VS


 Historique

29 décembre 2004 21:36:27 :
Ajout des évènements OnBeforeTabChange, OnAfterTabChange Ajout de la propriété "TabVisible"

 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) UN AUTRE TREEVIEW
Source .NET (Dotnet) UN MINI LEXER À PARTIR DE VOTRE ENUMÉRATION

 Sources de la même categorie

Source avec Zip CHAT SERVER-CLIENT par abderrahmenbilog
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMULATION DE CONSOLE POUR WINDOWS MOBILE par originalcompo
Source avec Zip Source .NET (Dotnet) BASE DE DONNÉES EN XML par DanMor498
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMPLECONV - APPLICATION DE CONVERSION MONÉTAIRE AVEC TAUX E... par Jeffrey_
Source avec Zip Source .NET (Dotnet) TRAITEUR D'IMAGE (MINI) par ycyril

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) CONTROLE D'ONGLET PERSONNALISABLE par Yxion
Source avec Zip Source avec une capture Source .NET (Dotnet) NAVIGATION DANS UNE TABCONTROL par floptwo
Source avec Zip Source avec une capture Source .NET (Dotnet) AFFICHER LES INFORMATIONS DE VERSION D'UN PROCESSUS OU D'UN ... par boumarsel
Source avec Zip Source avec une capture Source .NET (Dotnet) EDITEUR DE PLAYLIST ET RENOMMEUR DE FICHIER par thebigboss

Commentaires et avis

Commentaire de scoubidou944 le 02/01/2005 14:04:13

Allez j'en rajotue ma couche ici.
Encore un controle que l'on peut classer dans la catégorie : Que Du bonheur.

- J'ai pu assigner ma couleur de fond par Page,
- l'image de fond ne marche pas mais si on en met une sur le parent, on a une transparence au niveau de la place restante dans les onglets
- pas de problème avec une page contenant une treeview et une listview avec splitter.
- par contre il manque la barre de défilement lorsque l'on a trop d'onglets.
- L'orientation vers le haut peut etre pratique parfois (si vers le bas ca marche, ca doit pas etre long de faire vers le haut ;op
- Je n'ai pas pu modifier la couleur des noms d'onglets (tjs en 243.250.241)

Mais comme d'hab, excellent travail

Commentaire de scoubidou944 le 02/01/2005 14:17:23

Je pense que vais rajotuer qql truc moi ;p

HorizontalTabs::OnPaint

y'a du codage en dur pour les couleurs, rohhhh C mal ca ;p

Commentaire de scoubidou944 le 02/01/2005 15:06:22

voici le code à rajouter juste après les variables dans HorizontalTabs (ligne 53)

#region Color
private Color m_oBackColorGradientDown;
private Color m_oBackColorGradientUp;
private Color m_oBackColorBorder;
private Color m_oColorLineSeparator;
private Color m_oColorSelection;

public Color BackColorGradientDown
{
get { return m_oBackColorGradientDown; }
set { m_oBackColorGradientDown = value; }
}
public Color BackColorGradientUp
{
get { return m_oBackColorGradientUp; }
set { m_oBackColorGradientUp = value; }
}
public Color BackColorBorder
{
get { return m_oBackColorBorder; }
set { m_oBackColorBorder = value; }
}
public Color ColorLineSeparator
{
get { return m_oColorLineSeparator; }
set { m_oColorLineSeparator = value; }
}
public Color SelectionColor
{
get { return m_oColorSelection; }
set { m_oColorSelection = value; }
}

void InitColors ()
{
m_oBackColorGradientUp = Color.FromArgb(245,250,245);
m_oBackColorGradientDown = Color.FromArgb(240,250,234);
m_oBackColorBorder = Color.FromArgb(109,139,164);
m_oColorLineSeparator = Color.FromArgb(232,231,223);
m_oColorSelection = Color.WhiteSmoke;
}
#endregion



Ligne 114 : ajouter l'appel dans le contructeur : this.InitColors ();

Ligne 362 : DrawTabCadre (), j'ai supprimé le tracage des elipses je trouvais ca pas beau

Voici la nouvelle méthode OnPaint:
protected override void OnPaint(PaintEventArgs e)
{
int nbTabsHide = 0;
Rectangle r = OrientationRectangle(this.ClientRectangle);

using (LinearGradientBrush br = new LinearGradientBrush (this.ClientRectangle, m_oBackColorGradientUp, m_oBackColorGradientDown, 90))
{
Matrix m = OrientationMatrix;
if (m != null)
e.Graphics.Transform = m;
e.Graphics.FillRectangle(br, r);
using (Pen pTour = new Pen(m_oBackColorBorder))
{
r = DisplayRectangle;

//le DisplayRectangle est déjà tourné
e.Graphics.ResetTransform();
//dessin du tour du tabpage
e.Graphics.DrawRectangle(pTour, r.X-1, r.Y-1, r.Width+1, r.Height+1);
if (m != null)
e.Graphics.Transform = m;
using (GraphicsPath path = TabsRegion)
{
pTour.Width = 2;
e.Graphics.DrawPath(pTour, path);
}
using (Pen pLine = new Pen(m_oColorLineSeparator, 1))
{
nbTabsHide = 0;
//dessin des lignes
for (int i =0; i < Count; i++)
{
if (!IsVisible(i))
{
nbTabsHide++;
continue;
}
//dessin de la ligne blanche au dessus
e.Graphics.DrawLine(Pens.White, new Point(FMargins, FMargins + (i - nbTabsHide) * FTabsHeight - 1), new Point(FTabsWidth, FMargins + (i - nbTabsHide) * FTabsHeight -1));
//dessin de la ligne grise au dessus
e.Graphics.DrawLine(pLine, new Point(FMargins, FMargins + (i - nbTabsHide) * FTabsHeight), new Point(FTabsWidth, FMargins + (i - nbTabsHide) * FTabsHeight));
//dessin de la ligne grise au dessous
e.Graphics.DrawLine(Pens.White, new Point(FMargins, FMargins + (i - nbTabsHide) * FTabsHeight + FTabsHeight-1), new Point(FTabsWidth, FMargins + (i - nbTabsHide) * FTabsHeight + FTabsHeight-1));
//dessin de la ligne grise au dessous
e.Graphics.DrawLine(pLine, new Point(FMargins, FMargins + (i - nbTabsHide) * FTabsHeight + FTabsHeight), new Point(FTabsWidth, FMargins + (i - nbTabsHide) * FTabsHeight + FTabsHeight));
}
}
nbTabsHide = 0;
for (int i = 0; i < Count; i++)
{
if (!IsVisible(i))
{
nbTabsHide++;
continue;
}
//dessin du selectionné
if (i == FSelectedIndex)
{
Rectangle rSel = new Rectangle(1, FTabsHeight * (i - nbTabsHide) + FMargins, FTabsWidth + FMargins-2, FTabsHeight);
e.Graphics.FillRectangle(new SolidBrush (this.SelectionColor), rSel);

this.DrawTabCadre(e.Graphics, i- nbTabsHide);
using (Pen pLine = new Pen(Color.FromArgb(173,139,164)))
{
e.Graphics.DrawLine(pLine, FTabsWidth + FMargins+1, FTabsHeight * (i - nbTabsHide) + FMargins, FTabsWidth + FMargins+1, FTabsHeight * ((i - nbTabsHide)+1) + FMargins);
}

}
if (i == FHoverIndex)
{
DrawTabCadre(e.Graphics, i - nbTabsHide);
}
//dessin du texte
Rectangle rTab = new Rectangle(FMargins, FMargins + 1 + (i - nbTabsHide) * FTabsHeight, FTabsWidth - 5, FTabsHeight-1);
bool defaultDrawing = true;
if (OnDrawTab != null)
{
DrawTabEventArgs ev = new DrawTabEventArgs(e.Graphics, rTab);
OnDrawTab(this, ev);
defaultDrawing = ev.DefaultDrawing;
}
if (defaultDrawing)
{
StringFormat sf = new StringFormat();
sf.Alignment = FTabControls[i].HorizontalTextAlignement;
sf.LineAlignment = FTabControls[i].VerticalTextAlignment;
e.Graphics.DrawString(FTabControls[i].Text, this.Font, Brushes.Black, rTab, sf);
}
}
}
}
}

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Selection d'une tabPage [ par metosCS ] j'ai plusieurs tabpages dans un tabcontrol. je peux bien evidemment selectionner n'importe laquelle en cliquant dessus, mais comment faire à partir d' probleme avec des tabpages et coordonnés [ par Thanos_the_yopper ] voilà mon probleme : j'ai un tabcontrol et des tabpages, avec des zone de saisie ou des label dans ce tabpage. Je voudrais avoir accés au coordonnés d prolème form [ par Lhioui ] lorsque je dessine des bitmaps par la methode graphics: voil&#224; exactement comment j'ai fait:publi void tabPage_MouseDown(.....................){&n désactiver le changement d'onglet [ par _celine_ ] Bonjour, Je travaille dans un tabControl et j'aimerais savoir lorsqu'un tabPage est s&#233;lectionn&#233;, comment peut-on empecher l'utilisateur d'o Forms dans TabControl [ par bloomy ] Salut!j'ai cr&#233;&#233; 3 forms ind&#233;pendants que je voudrais r&#233;unir dans une seule fen&#234;tre.Pour cela je voudrais utiliser un TabContr TabControl, tabpage et raccourci clavier [ par Arthenius ] Salut a tous,Voila j'ai un tabcontrole avec plusieurs tabpage dedans, et je souhaiterais pouvoir s&#233;lectionner un des tabpage en utilisant le clav TabPage [ par nounours21_6 ] Bonjour, j'ai fait un programme qui utilise le controle 'TabControl'et je voudrais savoir comment on fait pour bloqu&#233; l'acc&#233;s &#224; un 'Tab Dessiner dans une tabPage [ par Kbitnik ] Salut &#224; tous, je voulais savoir si c'&#233;tait possible de dessiner dans une tabPage d'un tabControl. Parce que en faite j'ai essayer de dessine focus sur les contrôles [ par emmanuel9 ] Bonjour &#224; tous, J'ai un TabControl avec plusieurs TabPage et dans chacun des tabPage plusieurs Contr&#244;les. Je sais que pour definir qui aura Probleme picturebox [ par julbuttt ] Bonjour, Voila j'utilise 2 images que je met dans 2 picturebox different dasn un tabpage. le probleme est que j'ai qu'une image qui s'affiche et l'aut


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales