Archief - Objecten in array steken C#

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

ApolluMi

Legacy Member
Hey, ik kan dus een afbeelding zette op een picturebox als ik klik dan sta da daar, maar ik wil er meerdere kunne zette en dus heb ik een Array nodig, maar ik weet nie goe hoe ge me arrays moet werken en wa ge juist in uw constructer moet zetten weet iemand hoe je meerdere objecten kunt plaatsen op een pictyurebox?

ApolluMi

Legacy Member
Maar gemoet toch instanties van die klasse waar die image insteekt make in uve initialize component(constructor) in de main form?

Albireo

Legacy Member
Je vraag is me niet geheel duidelijk. Wil je elke keer als je op een knop (of op de picturebox zelf) drukt dat er een nieuwe afbeelding getoond wordt?

In dat geval kan je zoiets als dit maken:
Code:
    public partial class Form1 : Form {
        private MyImages images;
        public Form1() {
            InitializeComponent();
            images = new MyImages();
        }

        private void pictureBox1_Click(object sender, EventArgs e) {
            images.MoveNext();
            pictureBox1.Image=new Bitmap(images.Current);
        }
    }

    public class MyImages : IEnumerator<string> {
        private string[] images;
        private int i = -1;
        public MyImages() {
            images = new string[] {
                @"e:\flotspe\pictures\funny-pictures-cat-tells-you-to-kiss-his-bottom.jpg",
                @"E:\flotspe\pictures\funny-pictures-fighting-cats-constructive-feedback.jpg",
                @"E:\flotspe\pictures\funny-pictures-kitten-crashed-laptop.jpg",
                @"E:\flotspe\pictures\funny-pictures-scared-cat-naked-guy.jpg"
            };
        }

        public string Current {
            get {
                if (i == -1) throw new InvalidOperationException();
                if (images == null) throw new ObjectDisposedException("MyImages");
                return images[i];
            }
        }

        public void Dispose() {
            images = null;
        }

        object System.Collections.IEnumerator.Current {
            get { return Current; }
        }

        public bool MoveNext() {
            i++;
            if (i == images.Length) i = 0;
            return true;
        }

        public void Reset() {
            i = -1; ;
        }
    }

ApolluMi

Legacy Member
Ja het is eigelijk voor een spelleke tower defence, dus iedere keer als ge klikt moet die afbeelding van dien toren geplaatst worden.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan