mecyber25
Messages postés38Date d'inscriptionmardi 20 mai 2008StatutMembreDernière intervention 2 septembre 2017
-
13 juin 2012 à 14:06
mecyber25
Messages postés38Date d'inscriptionmardi 20 mai 2008StatutMembreDernière intervention 2 septembre 2017
-
13 juin 2012 à 15:35
Bonjour
J'ai un richTextBox et un bouton, je passe un nombre en parametre et s'il est divisible par 3 ou 5, "Divisible" s'écrit à chaque fois sur le richtextBox...C'est trés simple; mais je veux volontairement compliquer et utiliser un délégué...
Problème rien ne s'affiche ...Pourquoi?
Merci pour vos éventuelles réponses
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public class methodes
{
Form1 f = new Form1();
public void methode1(string s,int nombre)
{
if (nombre%3==0) f.richTextBox1.AppendText(s);
}
public void methode2(string s,int nombre)
{
if (nombre%5==0) f.richTextBox1.AppendText(s);
}
}
public class evenement
{
public delegate void appel(string s, int nombre);
public appel choix;
}
private void button1_Click(object sender, EventArgs e)
{
evenement ev = new evenement();
methodes m = new methodes();
ev.choix = m.methode1;
ev.choix += m.methode2;
ev.choix("Divisible",165);
}
}
}
BasicInstinct
Messages postés1470Date d'inscriptionmardi 5 février 2002StatutMembreDernière intervention20 octobre 201412 13 juin 2012 à 15:12
dans ta classe methode, tu travailles dans un "new form1", donc pas dans le form1 du bouton, mais dans un deuxieme objet.
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public class methodes
{
Form1 f;
public methodes(Form1 frm)
{
f = frm;
}
public void methode1(string s,int nombre)
{
if (nombre%3==0) f.richTextBox1.AppendText(s);
}
public void methode2(string s,int nombre)
{
if (nombre%5==0) f.richTextBox1.AppendText(s);
}
}
public class evenement
{
public delegate void appel(string s, int nombre);
public appel choix;
}
private void button1_Click(object sender, EventArgs e)
{
evenement ev = new evenement();
methodes m = new methodes(this);
ev.choix = m.methode1;
ev.choix += m.methode2;
ev.choix("Divisible",165);
}
}
}