Tracer une ligne

Résolu
cs_electro Messages postés 60 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 30 juin 2011 - 7 oct. 2010 à 13:29
cs_electro Messages postés 60 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 30 juin 2011 - 15 oct. 2010 à 01:24
Salutation à tous le monde...

Débutant en C#, j'apprend tous les jours de nouvelles astuces et, je vous dis déjà un gran merci pour les connaissances que vous partager.

Après plusieurs recherches sur le forum et sur le net, je recherche une solution "SIMPLE" pour pouvoir simplement tracer une ligne dans mon formulaire.

J'ai essayer avec la fonction "PEN" mais, je ne m'en sort pas...

Quelqu'un aurait-il un petit bout de code tout simple pour tracer une ligne dans un formulaire avec, éventuellement la possibilité de définir la couleurs.

Un GRAND merci


Nicolas

6 réponses

cs_serco Messages postés 8 Date d'inscription jeudi 13 avril 2006 Statut Membre Dernière intervention 19 octobre 2010
13 oct. 2010 à 19:11
bonjour
pour tracer un ligne dans ton forme plus simple méthode est passer par l'événement <>

private void Form1_Paint(object sender, PaintEventArgs e)
{

// cet code trace une ligne haut a gauche de ton forme 100 Pixel vers la droit et 200 Pixel vers le bas.
e.Graphics.DrawLine(Pens.Red, 0, 0, 100, 200);

// cet code trace une ligne gauche de ton forme 100 Pixel vers la droit.
e.Graphics.DrawLine(Pens.Red, 0, 100, 100, 100);

}
bon courage


 SERCO
cs_serco Messages postés 8 Date d'inscription jeudi 13 avril 2006 Statut Membre Dernière intervention 19 octobre 2010
14 oct. 2010 à 23:56
bonjour electro

ce normal tu ne peut pas dessiner sur TabControl et mémé si tu dessine ca ce vois pas pars-que par dessus il y a TabPage, donc il faut dessiner sur TabPage.

je te envoie le code complet pour dessiner sur la TabPage1

public Form1()
{
InitializeComponent();
Initialize_Tbl1();
}
private System.Windows.Forms.TabControl Tbl1;
private System.Windows.Forms.TabPage tabPage1;
private System.Windows.Forms.TabPage tabPage2;

void Initialize_Tbl1()
{
this.Tbl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.Tbl1.SuspendLayout();

//
// Tbl1
//
this.Tbl1.Controls.Add(this.tabPage1);
this.Tbl1.Controls.Add(this.tabPage2);
this.Tbl1.Location = new System.Drawing.Point(109, 306);
this.Tbl1.Name = "Tbl1";
this.Tbl1.SelectedIndex = 0;
this.Tbl1.Size = new System.Drawing.Size(200, 100);
this.Tbl1.TabIndex = 1;
//
// tabPage1
//
this.tabPage1.Location = new System.Drawing.Point(4, 22);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage1.Size = new System.Drawing.Size(192, 74);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = "tabPage1";
this.tabPage1.UseVisualStyleBackColor = true;
this.tabPage1.Paint += new System.Windows.Forms.PaintEventHandler(this.tabPage1_Paint);
//
// tabPage2
//
this.tabPage2.Location = new System.Drawing.Point(4, 22);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage2.Size = new System.Drawing.Size(192, 74);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = "tabPage2";
this.tabPage2.UseVisualStyleBackColor = true;

this.Controls.Add(this.Tbl1);
this.Tbl1.ResumeLayout(false);

}
private void tabPage1_Paint(object sender, PaintEventArgs e)
{
// cet code trace une ligne haut a gauche de ton tabPage1 100 Pixel vers la droit et 200 //Pixel vers le bas.
e.Graphics.DrawLine(Pens.Red, 0, 0, 100, 200);

// cet code trace une ligne gauche de ton tabPage1 100 Pixel vers la droit.
e.Graphics.DrawLine(Pens.Red, 0, 100, 100, 100);

}


bon courage
salutation

 SERCO
cs_louis14 Messages postés 793 Date d'inscription mardi 8 juillet 2003 Statut Membre Dernière intervention 10 février 2021 8
8 oct. 2010 à 08:54
Bonjour
je pense que tu trouveras ce que tu veux à cette adresse :
http://www.csharpfr.com/forum/sujet-TRACER-LIGNE_750783.aspx



louis
cs_electro Messages postés 60 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 30 juin 2011
8 oct. 2010 à 12:01
Merci,

Il n'y a pas une solution beaucoup plus simple?

Juste une ligne dans un formulaire......

Nicolas

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_electro Messages postés 60 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 30 juin 2011
14 oct. 2010 à 20:19
Merci SERCO, ça marche super bien pour tracer une ligne dans un formulaire..

Maintenand, plus compliqué (peut-etre). Je dois tracer une ligne dans un "TabControl".

Avec ta méthode, la ligne, est sous le "TabControl" alors, j'ai essayer avec l'événement "Paint" du controle mais, rien à faire, il ne s'éxécute pas.

PS: Mon "TabControl" est créer par programmation et, j'ai inséré ceci avant de le créer
"Tbl1.Paint += new PaintEventHandler(Tbl1_Paint);"
Controls.Add(Tbl1);

Si tu peux m'aider, un GRAND merci

Nicolas
cs_electro Messages postés 60 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 30 juin 2011
15 oct. 2010 à 01:24
SUPER, merci, j'avais pas raisonné asser loin...... Juste le début de ton message à me dire "Comme je suis......"...

C'est la solution. Certe un peu lourde car, pour tracer une ligne sur tous les onglets, au meme endroits, je dois déclarer l'événement pour tous les "tabpages" mais la méthode est la même pour tous.

Encore un SUPER merci.....

Nicolas
Rejoignez-nous