Controller Referenz?

M

meeee

Neues Mitglied
Thread Starter
Dabei seit
29.11.2011
Beiträge
18
Reaktionspunkte
0
Hallo Leute

Ich habe in meinem Projekt zwei Windows.
Eines für Einstellungen und das andere für Anleitungen etc.
Jedes Window hat seine eigene Controller-klasse.

Jetzt möchte ich gerne von den Einstellungen die Anleitung öffnen.
Darum dachte ich mir die einfachste Methode ist, in der Controller-klasse von Einstellungen eine Referenz von der anderen zu haben.

Wenn ich dann aber mit #import die Klasse einbinden will, stürzt mir das Programm ab. Es wird keine Zeile als "falsch" markiert.

Danke für eure Hilfe
Gruss meeee
 
Wenn ich dann aber mit #import die Klasse einbinden will, stürzt mir das Programm ab. Es wird keine Zeile als "falsch" markiert.

Sehr, sehr unwahrscheinlich. Ausser zum Beispiel, Deine .h Datei enthält üblen Schrott.

Abgesehen davon ist mir Dein Problem noch nicht vollständig klar. Wir reden hier von OS X, richtig? Kannst Du noch mal versuchen, Dein Problem zu formulieren?

Alex
 
Hey below
Danke für deine Antwort.

Ja das hab ich vergessen es geht um OS X.

Also ich habe zwei ControllerKlassen
- PreferencesController (h + m)
- HelpController (h + m)

Diese haben je ein Fenster zugeordnet. (NSWindow mit verschiedenen Elementen)
Ich möchte nun im PreferencesController eine Referenz von HelpController haben, damit ich dieses steuern kann.
Wenn ich jedoch ein import im PreferencesController von HelpController.h mache, stürzt mir das Programm ab.

Ist es so, dass ich keine Referenzen von Controllerklassen haben kann?

meeee
 
Natürlich kannst Du. Ein #import sollte aber (normalerweise) nichts am Laufzeitverhalten Deiner App ändern

Alex
 
Das heisst, dass Dein .h File irgendwie falsch ist.

Kannst Du den Code hochladen?

Alex
 
Hab es gefunden. Ich hatte die Konstante falsch definiert.
Danke. Jetzt ist wenigstens der Fehler weg.

Aber wieso kommt dieser Fehler erst beim Einbinden?

Gruss
Meeee
 
Weil Du die Konstante in der .h Datei angelegt hast (nicht als extern)

Alex
 
Danke für deine Information.

Jedoch funktioniert es immer noch nicht ganz.
Ich habe es jetzt geschafft, in der Preferenzklasse eine Referenz zu haben.
Jetzt kann ich eine Methode von der Preferenzklasse in der Helpklasse aufrufen.

In dieser Methode hatte ich dann makeKeyAndOrderFront. Jedoch funktioniert dies nicht.
Dies ist wahrscheinlich so, weil ich nicht die "richtige" Referenz von der Helpklasse habe.

Kann ich irgendwie die Referenz abfragen, so dass ich die Referenz vom schon existierenden Fenster habe?

Gruss
meeee
 
Lad mal Code hoch

Alex
 
Ja. Klar.

Nur weil ich dir ein Glas hinstelle auf dem "Jolt Cola" steht, ist noch lange kein Getränk drin.

Woher soll der arme Compiler denn wissen, was in der "helpWindow" Variable drin sein soll? Gedankenlesen kann auch llvm 3 nicht

Alex
 
Das habe ich ja schon gesagt.
Aber das weiss ich ja. Was ich nicht weiss, ist wie man das jetzt lösen kann, da ich irgendwie nirgends die richtige Referenz habe.

Dies ist wahrscheinlich so, weil ich nicht die "richtige" Referenz von der Helpklasse habe.

Kann ich irgendwie die Referenz abfragen, so dass ich die Referenz vom schon existierenden Fenster habe?
 
Das musst Du in Deinem xib entsprechend Verbinden. Stichwort zum Nachschlagen: "Outlets"

Alex
 
Danke ;)

Habe es nur immer mit Window Referenzierung gemacht und nicht mit dem ganzen Controller :)

Vielen Danke!

Gruss
meeee
 
Zurück
Oben Unten