Accéder à un RichTextBox

Résolu
JaimeLinux Messages postés 9 Date d'inscription samedi 3 juillet 2004 Statut Membre Dernière intervention 14 février 2005 - 18 janv. 2005 à 15:40
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 19 janv. 2005 à 13:02
Bonjour,

Voila, dans mon programme, quand j'appuie sur un
bouton, je crée un nouveau RichTextBox que j'affiche et je n'arrive pas
ensuite à y accéder car une fois sorti de la fonction (celle qui
s'exécute quand je clique sur le bouton), le nom du RichTextBox n'est
bien sûr plus accessible.

Pourraît-on, par exemple, créer une sorte de tableau où l'on pourraît conserver les RichTextBox créés.



Merci et que le pingouin soit avec vous!

3 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
18 janv. 2005 à 18:36
oui
si tu connais le nombre maxi de RTB que tu utiliseras tu peux utiliser un tableau (en tant que membre de la classe, pas local à la méthode sinon il subira le même sort que ton RTB)
sinon tu peux utiliser une classe de collections type ArrayList, tu auras juste à caster l'object en RichTextBox à la lecture dans la collection (même remarque que pour le tableau : en tant que membre de la classe, pas en local)

Cocoricoooooooo !!!!
coq
MVP Visual C#
3
JaimeLinux Messages postés 9 Date d'inscription samedi 3 juillet 2004 Statut Membre Dernière intervention 14 février 2005
19 janv. 2005 à 12:20
Cela faisait longtemps que je cherchais comment faire. Pour ceux que cela intéresse voila comment procéder:



// Créer une liste en dehors d'une méthode qui va contenir les RTF

ArrayList tab = new ArrayList();



// Voici une fonction qui crée un nouveau RTF

void CreerRTF()
{
RichTextBox rtf = new System.Windows.Forms.RichTextBox();

// Paramêtres par défaut de rtf à changer comme Size, Dock...

// Ci-dessous, on insère le RTF créé dans tab

tab.Add(rtf);
}



// Méthode qui accède à tous les RTF de tab

void AccesRTF()

{

IEnumerator enum = tab.GetEnumerator();

// Enumération de tous les RTF de tab

while (enum.MoveNext())

{

// On créé un RTF provisoire

RichTextBox temp;

// Il faut convertir (caster) l'objet de enum en RTF

temp = (RichTextBox) enum.Current;

// Changement à faire

}

}
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
19 janv. 2005 à 13:02
ou :
void AccesRTF()
{
foreach ( RichTextBox temp in tab)
{
// Changement à faire
}
}

:-)

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
Rejoignez-nous