Bevor ich meine OSX-Frage stelle, erlaube mir bitte, eine Funktion in MS Windows zu beschreiben.XCode/Swift OSX. Auswählen und Bearbeiten von Zellen in ViewBased NSTableView
Wenn ich eine Windows-Anwendung in MS Visual Studio erstelle, wo die Anwendung ein einfaches DataGrid enthält, kann der Benutzer einfach in eine Zelle klicken, den Inhalt bearbeiten und mit den Pfeiltasten hoch/runter schnell aus der Zelle navigieren der Nächste. Wenn Sie die Zelle ausschließen, wird das EndEdit-Ereignis ausgelöst. Mit den Pfeiltasten auf/ab kann ein Benutzer schnell die Werte einer Spalte nach unten bewegen, ohne die Eingabetaste oder die Maus zu drücken.
Ich versuche, das gleiche mit OSX XCode/Swift zu tun. Mit der Maus in eine Zelle klicken und bearbeiten ist kein Problem. Aber es scheint, als müsste ich zweimal auf die Zelle klicken, um sie zum Bearbeiten auszuwählen, und nach der Bearbeitung muss ich die Eingabetaste drücken oder auf eine andere Zelle klicken. Ich kann nicht einfach die Auf-/Ab-Pfeiltasten benutzen, um aus der Zelle zu kommen.
Ist das einfach die Art, wie OSX funktioniert? Ich meine, ich mache eine OSX-Anwendung, also möchte ich, dass sie sich wie eine native Anwendung verhält, aber es scheint nur so, als ob viel Eingabe und Klicken erforderlich wäre, wenn der Benutzer zum Beispiel einige Zellen bearbeiten würde.
Gibt es irgendwelche Eigenschaften, die ich in der ViewBased TableView einstellen muss?
Sorry wegen der langen E-Mail - ich hoffe ich habe es trotzdem erklärt.
Dank Ian
Ich würde gerne sehen, was Sie bisher versucht haben. Denn theoretisch ist es durchaus möglich, Ihr Verhalten zu erreichen. Stellen Sie sich OSX 'Excel (Numbers) vor. Sie können auf jeden Fall etwas Ähnliches erstellen. – Akaino
Bisher habe ich gerade versucht, Eigenschaften im Inspektor für IDE-Attribute zu ändern. Es gibt ein Paar, das sich darauf bezieht, wie eine Zelle ausgewählt wird. Und es gibt einen Zusammenhang damit, wie das EditEnd-Ereignis ausgelöst wird. Aber ich kann nichts sehen, was damit zusammenhängt, wie der Fokus aus der Zelle genommen werden kann - dh alles, was es dem Benutzer erlauben würde, die Auf-/Ab-Pfeiltasten zu drücken, um zur nächsten Zelle zu gehen. Vielleicht muss ich nur Tasten drücken und programmgesteuert eine Zeile nach oben/unten verschieben und den Bearbeitungsfokus auf die nächste Zelle legen - also meine eigene rollen - jetzt, wie Sie sagen, ich versuche nicht, eine nicht-Mac-ähnliche Benutzeroberfläche zu erstellen . – IanS
Sie können dieses Verhalten nicht erreichen, indem Sie einfach IB Flags afaik setzen. Das programmatische Abrufen der keyPress-Ereignisse scheint der richtige Weg zu sein. Ich würde die gleiche Tour machen. – Akaino