2009-06-02 6 views
0

En théorie, tout ce que j'essaie d'accomplir est stupide du point de vue orienté objet, mais je dois le faire.Formulaire d'accès Membres avec un nombre entier?

C'est un jeu en ligne sur lequel je travaille.Le client a un inventaire avec des objets, vous savez - des objets virtuels. Le serveur envoie les articles avec leur position correspondante dans l'inventaire.

Voici comment ressemble à mon inventaire:

J'ai 62 panneaux (chaque panneau représente la pièce dans l'inventaire).

Mon problème: Lorsque je trier les objets virtuels et les emplacements correspondants, ils doivent être placés, je dois les dessiner sur le formulaire.

En théorie, si je reçois l'élément "C: \ a.bmp" en position 4, comment définir panel4.image pour qu'il soit égal à l'image?

C'est ce que je suis en train de faire:

var data = new byte[6]; 
... //we receive a packet,data is our buffer 
var position = data[4]; 
Form1.panel + position + .backgroundImage = "bla bla.jpg"; 

Comment les appeler les panneaux comme ça?

Répondre

2

Transformez-les en tableau au lieu d'avoir 62 variables individuelles. Ensuite, vous pouvez utiliser:

Form1.panels[position].BackgroundImage = "..."; 

Il n'y a pas de support de concepteur pour cela (que je suis au courant) mais - avez-vous créé tous ces panneaux dans le concepteur? Si vous pouvez éventuellement le faire par programme, vous allez rendre votre vie beaucoup plus facile (IMO).

+0

Ils m'ont toujours dit cela et j'oublie toujours cette petite solution. Merci encore Jon! –

+0

Devrais-je créer un autre tableau et les ajouter manuellement ou devrais-je modifier le fichier Designer.cs? Je n'ai jamais essayé de le faire avant. –

+0

d'oh, je suis trop lent à nouveau. – Robert

Questions connexes