Memory Zufallgenerator

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von SystemUnknow.

    Memory Zufallgenerator

    Ich komm bei einem Memory Spiel nicht weiter. Ich habe insgesamt 20 Pictureboxen mit blauem hintergrund. Wenn ich start drücke, sollen sich 10 Bilder 2X auf die Picureboxen verteilen, und wenn ich noch einmal auf Start drücke, sollen sie wieder eine andere Position haben. Wie könnte ich das machen, das außerdem jeder nur 2 Felder anklicken kann (geht das mit if?), und falls zwei gleiche Bilder aufgedeckt sind, dass er dann irgendetwas schreibt. Hoffe ihr könnt mir helfen

    VB.NET-Quellcode

    1. Structure Mystructure
    2. bild As Image
    3. index As Integer
    4. Dim rr As New random
    5. Dim Zuf As Integer = rr.Next(0, 20)
    Mach Dir eine List(Of Mystructure).
    Pack Dir da per Zufall die Bilder rein und die Indizes der Bilder zum Vergleich.
    Bei Button_Klick füllst Du die Liste und verteilst die Bilder auf der Form.
    Bei Mouse_Down() rechnest Du Dir die Maus-Koordinaten in Bild-Koordinaten um, daraus den Index und schon ist alles (fast) fertig. :thumbsup:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Amico22 schrieb:

    Ich habs mir schon mit Schleifen überlegt aber das geht nicht. Ich versuche gerade das mit Arrays zu machen, aber ich verstehs irgendwie nicht -.-

    Überleg Dir das erst einmal Schritt für Schritt: wenn Du versuchst alles auf einmal zu machen, wirst Du scheitern

    1. hast Du 10 verschiedene Bilder ? Sind die alle schon in deine Anwendung als Image geladen ? Wenn nicht, fang damit an
    2. mach dir eine List (of Image) mit 2x10 Bildern, ein Array mit 20 Plätzen geht auch

    Wenn Du das soweit fertig hast + getestet, dann musst Du njur noch die Liste zufällig durcheinanderbringen. Methoden gibt es hier , ansonsten melde Dich mit Deinem fertigen Code und einem Screenshot Deiner Oberfläche zurück.