1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Editierbare Tabelle streikt?!

Dieses Thema im Forum "OS X-Developer" wurde erstellt von LeBensch, 25.08.09.

  1. LeBensch

    LeBensch Jonagold

    Dabei seit:
    08.07.09
    Beiträge:
    19
    Hallo,

    folgendes Problem: ich habe eine NSTableView, in welcher die einzelnen Zellen editierbar sind. Darunter befinden sich pro Zeile u.a. Checkbox- und TextCells. Wie ich gelesen habe, wird die zugrunde liegende Datasource ja automatisch geändert, wenn ich Änderungen an den Zellen vornehme. Im Fall von Checkboxcells funktioniert dies wunderbar, bei TextCells streikt das Ganze (Textcell einzeln geändert - im entsprechenden Datacell der verknüpften Datasource steht nach wie vor der alte Wert). Ändere ich eine Checkbox UND eine Textcell in einer Zeile, dann funktioniert allerdings alles wunderbar.

    Wie ich gelesen habe, benötigt man ja keine entsprechenden Handler mehr. Ist das so korrekt?
    Falls doch, wieso funktioniert es dann mit manchen Elementen, wie z.B. der Checkboxcell?

    Vielen Dank und beste Grüße
    LeBensch
     
  2. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Frage: Sprechen wir wieder von ASS oder Cocoa?

    Viele Grüße
     
  3. LeBensch

    LeBensch Jonagold

    Dabei seit:
    08.07.09
    Beiträge:
    19
    Es geht dabei um ASS.

    Gruß,
    LeBensch
     
  4. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    ASKDataSource ist das Zauberwort.

    Siehe Anhang.

    Um es zu verstehen > klicke auf das Objekt der Klasse ASKDataSource > InfoPalette > Outlets

    Viele Grüße

    PS: Viel Spass beim Knobeln von Speichern und Lesen :p
     

    Anhänge:

  5. LeBensch

    LeBensch Jonagold

    Dabei seit:
    08.07.09
    Beiträge:
    19
    Hallo,

    @LittlePixel: Danke für deine Antwort, fast genauso hatte ich es auch gemacht, Lösung war dann aber ein Bug an anderer Stelle.

    Jetzt bleibt allerdings dennoch folgendes Problem:
    ändert man eine TextCell und klickt danach auf den "Save"-Button der Anwendung, bleibt der Focus ja auf der gerade geänderten TextCell (mit blinkendem Cursor = Editiermodus der Cell). Da die Änderungen erst im DataSource gespeichert werden, NACHDEM die TextCell nicht mehr den Focus hat, suche ich nun nach einer Möglichkeit, den Focus VOR dem Speichern von der Cell zu nehmen. Bin bisher aber nicht fündig geworden. Jemand ne Idee?

    Viele Grüße
    LeBensch
     
  6. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Hallo,

    Ich glaube bei ASS dürfte das jemand sehr klein sein ;)

    Code:
    set first responder of front window to theObject
    "theObject" ist das Objekt, das jetzt in der ResponderChain ganz vorne ist.
    Nimm einfach den Button, der geklickt wird.

    Ich hoffe nur, dass auch der Setter von der TextCell zuvor aufgerufen wird.
    Sollte aber...

    Viele Grüße
     
  7. LeBensch

    LeBensch Jonagold

    Dabei seit:
    08.07.09
    Beiträge:
    19
    Super,
    hat funktioniert, Danke! :)
     
  8. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Ist auch der Wert in der Zelle up to date?
    Hast Du das geprüft?

    Ich vermute ja, aber sicher ist sicher ;)

    Viele Grüße
     

Diese Seite empfehlen