Funktion einer anderen Class richtig aufrufen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Funktion einer anderen Class richtig aufrufen

    Hallo,

    ich schreibe grade an meiner ersten mac app und stoße hier auf ein problem und google wohl mit den falschen begriffen

    ich rufe in einer AppController.m ein socket auf und in der entsprechende EchoConnection.m läuft ein Empfänger doch der sollte zusätzlich die werte an eine Funktion in dem AppController.m senden doch dort stoße ich an Probleme das die Views nicht richtig zugeordnet werden wenn ich dies Funktion von der anderen klasse aufrufe

    Quellcode

    1. - (void)checkMessage:(NSString *)msg
    2. {
    3. [InfoView makeKeyAndOrderFront:self];
    4. [InfoView setLevel:kCGMaximumWindowLevel];
    5. NSLog(@"hier %@",msg);
    6. }
    Alles anzeigen


    Quellcode

    1. //EchoConnection.m
    2. AppController *main = AppController;
    3. [main checkMessage:totalstring];
  • Du solltest Dir wirklich mal ein Buch zulegen mit den Grundlagen von Objektorientiertem Programmieren.

    Klassen besitzen Methoden und Attribute keine Funktionen. Funktionen verschickt man auch nicht. Du kannst eine Instanz einer Klasse an eine andere Instanz einer Klasse weitergeben, damit diese sich kennen oder auch nur die benötigten Attribute.

    Wichtig ist das du erstmal den Unterschiede zwischen einer Klasse und einer Instanz verstehst. Dann verstehst du auch worum es hier eigentlich geht.

    In deinem Fall musst du der Instanz deiner neuen Klasse halt die Instanz deines InfoView übergeben, damit sie diese kennt.

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)