Klopfer91
Grünschnabel
Jetzt hab ich 31 Fehler.
Ich poste hier jetzt auch einmal die dazugehörige Form.
Vielleicht hilft das...
Für den Fall dass mein Compiler einfach nur spinnt hier das Projekt als zip:
Memorie Visual C++ 2010 Projekt als Zip
Memorie.h
Karte.h
Form1.h
Ich poste hier jetzt auch einmal die dazugehörige Form.
Vielleicht hilft das...
Für den Fall dass mein Compiler einfach nur spinnt hier das Projekt als zip:
Memorie Visual C++ 2010 Projekt als Zip
Memorie.h
Code:
#ifdef MEMORIE_H
namespace MemorieC {
public ref class Memorie;
}
#else
#define MEMORIE_H
#include "Karte.h"
#include "Form1.h"
namespace MemorieC {
using namespace System::Collections::Generic;
public ref class Memorie
{
//Attribute
private:
int paare; //Anzahl der Paare im Spiel
int gefundenePaare; //Anzahl der gefundenen Paare
List<Karte^>^ kartenListe; // die Liste | zweimal das „^“ weil es 2 Klassenverweise sind
Karte^ letzteKarte; //die Karte, die gerade umgedreht wurde
Karte^ letzteKarte2; //Hilfsvariabel, hab ich keine besser Lösung für gefunden
Form1^ form; //Die Form, auf der die Karten angezeigt werden sollen
bool warten; // gibt an, ob Karten gerade umgedreht wurden und deswegen gleich automatischen umgedreht werden. Solange muss der Spieler warten!
Timer^ timer; // der Timer, der genutzt wird, um den Spieler warten zu lassen.
static int wartezeit = 500; //Wartezeit = 500ms = 0,5s
public:
static String^ PicturePath = Application::StartupPath + "\\"; //Hierraus werden alle Bilder geladen. Also der Pfad wo die Exe liegt. Man kann hier noch Unterordner angeben. Bsp: [...] + "\\Bilder\\";
//Konstruktoren
public:
Memorie(int anzahlPaare, Form1^ anzeigeForm);
};
}
#endif
Karte.h
Code:
#ifdef KARTE_H
namespace MemorieC {
public ref class Karte : public System::Windows::Forms::PictureBox;
}
#else
#define KARTE_H
#include "Memorie.h"
namespace MemorieC {
public ref class Karte : public System::Windows::Forms::PictureBox
{
//Attribute
public:
static const int width = 50; //Breite einer Karte | kann nicht zur Laufzeit geändert werden (Der Compiler akzeptiert auch keine "width = x"angabe)
static const int height = 50; //Höhe einer Karte
int index; // der Index der Karte, gibt an um welche Karte es sich handelt und welches Bild sie hat
int x; //gibt an in welcher horizontalen Reihe auf dem Spielfeld sich die Karte befindet
int y; //gibt an in welcher vertikalen Reihe auf dem Spielfeld sich die karte befindet
static const System::String^ upperImage = "back.png"; // der Name des Bildes, welches die Rückseite jeder Karte zeigt
System::String^ downImage; // der Name des Bildes, welches die Vorderseite zeigt (abhängig vom Index)
public:
Karte(int index, int x, int y, Memorie^ memorie);
};
}
#endif
Form1.h
Code:
#pragma once
namespace MemorieC {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
/// <summary>
/// Zusammenfassung für Form1
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
//
//TODO: Konstruktorcode hier hinzufügen.
//
}
protected:
/// <summary>
/// Verwendete Ressourcen bereinigen.
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
private: System::Windows::Forms::MenuStrip^ menuStrip1;
private: System::Windows::Forms::ToolStripMenuItem^ neuesSpielToolStripMenuItem;
private: System::Windows::Forms::Panel^ panel1;
protected:
private:
/// <summary>
/// Erforderliche Designervariable.
/// </summary>
System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
/// <summary>
/// Erforderliche Methode für die Designerunterstützung.
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
/// </summary>
void InitializeComponent(void)
{
this->menuStrip1 = (gcnew System::Windows::Forms::MenuStrip());
this->neuesSpielToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());
this->panel1 = (gcnew System::Windows::Forms::Panel());
this->menuStrip1->SuspendLayout();
this->SuspendLayout();
//
// menuStrip1
//
this->menuStrip1->Items->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(1) {this->neuesSpielToolStripMenuItem});
this->menuStrip1->Location = System::Drawing::Point(0, 0);
this->menuStrip1->Name = L"menuStrip1";
this->menuStrip1->Size = System::Drawing::Size(292, 24);
this->menuStrip1->TabIndex = 0;
this->menuStrip1->Text = L"menuStrip1";
//
// neuesSpielToolStripMenuItem
//
this->neuesSpielToolStripMenuItem->Name = L"neuesSpielToolStripMenuItem";
this->neuesSpielToolStripMenuItem->Size = System::Drawing::Size(74, 20);
this->neuesSpielToolStripMenuItem->Text = L"Neues Spiel";
this->neuesSpielToolStripMenuItem->Click += gcnew System::EventHandler(this, &Form1::neuesSpielToolStripMenuItem_Click);
//
// panel1
//
this->panel1->Location = System::Drawing::Point(12, 27);
this->panel1->Name = L"panel1";
this->panel1->Size = System::Drawing::Size(268, 227);
this->panel1->TabIndex = 1;
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(292, 266);
this->Controls->Add(this->panel1);
this->Controls->Add(this->menuStrip1);
this->MainMenuStrip = this->menuStrip1;
this->Name = L"Form1";
this->Text = L"Memorie C++";
this->menuStrip1->ResumeLayout(false);
this->menuStrip1->PerformLayout();
this->ResumeLayout(false);
this->PerformLayout();
}
#pragma endregion
private: System::Void neuesSpielToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
//MessageBox::Show("Test");
}
};
}