Klassenarbeit

Hallo,

bin gerade dabei, mich in das Thema „Klassenprogrammierung“ (für VBA) reinzufitzen. Doch leider fehlen mir da noch ein paar grundlegende Erklärungen. Deshalb meine Fragen:
a) wo kann man im Web solches Wissen herbekommen (allgemein) und
b) die konkrete Frage: ich habe übernommenen Code, in dem eine Klasse erzeugt wird (inkl. Schaltflächen-Klick). Nun möchte ich aus diesem Klick heraus wieder in ein normales Modul wechseln, aber wenn ich „Call AufrufPC“ eingebe, sagt er, dass es irgendwie nicht geht.
Das Ganze soll ein Spiel werden, in dem ich auf irgendwelche Schaltflächen klicke und anschließend ist eben der PC dran.

Gruß und Danke im Voraus

hallo tobias,

Hallo,

bin gerade dabei, mich in das Thema „Klassenprogrammierung“
(für VBA) reinzufitzen. Doch leider fehlen mir da noch ein
paar grundlegende Erklärungen. Deshalb meine Fragen:
a) wo kann man im Web solches Wissen herbekommen (allgemein)

über Ebooks. Diese gibt es manchmal bei Verlagen(wie Markt&Technik) kostenlos zum downloaden. Oder Du holst Sie dir über ein Filesharingprogramm…
Ich bevorzuge jedoch die gedruckte Variante, ist zum Nachschlagen besser finde ich

Ansonsten über diverse Internet-Foren zum jeweiligen Thema…

sowas geniales wie beispielsweise Selfhtml gibts meines Wissen für VBA jedoch nicht…

und
b) die konkrete Frage: ich habe übernommenen Code, in dem eine
Klasse erzeugt wird (inkl. Schaltflächen-Klick). Nun möchte
ich aus diesem Klick heraus wieder in ein normales Modul
wechseln, aber wenn ich „Call AufrufPC“ eingebe, sagt er, dass
es irgendwie nicht geht.
Das Ganze soll ein Spiel werden, in dem ich auf irgendwelche
Schaltflächen klicke und anschließend ist eben der PC dran.

hmm, ich verstehe deine beschreibung nicht ganz. Ich gehe richtig davon aus, das Du 1ne Klasse mit allen mögliche Spielaktionen hast(wie Schaltflaechen_Click)
Aus dieser Klasse instanzierst Du 2 Objekte… mit denen Du arbeitest…
Am besten beschreibst Du genau, was irgendwie nicht geht, oder hilft Dir das etwa weiter?

dim xComputer as cls_Spielaktionen
dim xMensch as cls_Spielaktionen

Private Sub Command1_Click()

call xcomputer.Schaltflaechen_Click

end sub

viele grüße

rasta

Gruß und Danke im Voraus

Hallo Rasta,

danke erst einmal für deine Hilfe. Ich hab zwar schon in manchem Forum geschaut (u. a. vbarchiv.de), aber nix so richtig gefunden - und richtige Bücher sind ja meist ewig teuer und man weiß nie so richtig, was drin steht.
Mit den Ebooks, da muss ich echt mal schauen.

So, nun kurz zum Programm:
Ich hab mir (von vbarchiv) eine Klasse übernommen und (soweit wie ichs verstanden hab) abgeändert. Diese Klasse macht folgendes:
es werden Schaltflächen zur Laufzeit generiert, welche (wie bei vb selbst - ich programme in vba) einen Index haben.
Zu diesen Schaltflächen (bei mit 8x8-Feld) gibt es die dazugehörige Click-Anweisung.

Kennst du „Othello“? Dann weißt du, was ich meine. Ich möchte jetzt als Spieler selbst auf die Schaltfläche klicken - dazu kommt die Click-Anweisung ins Spiel. Anschließend soll der PC (oder der 2. Spieler) seinen Zug tun.

Nun kenne ich es so, dass ich verschiedene Programmteile über die Call-Anweisung aufrufe. Deshalb dachte ich, dass der Aufruf des Programms, wo ich den PC spielen lasse aus der Click-Anweisung heraus gestartet werden muss (woher sonst). Damit liege ich aber garantiert nicht richtig. Doch wie muss man das anders machen?
Und … diesen aufgerufenen Code (für den PC) kann ich nicht in einem anderen Modul haben - ich muss ihn in der Klasse selbst schreiben - was garantiert noch falscher ist.
Doch leider weiß ich nicht, wie ich dem PC sagen kann, das der Code in einem anderen Modul steckt.

So, ich hoffe, es war ausführlich genug.
Gruß Tobias