Frage

Ich schreibe eine Cocoa-Anwendung, die den Inhalt einer Archivdatei zeigt in einem NSOutlineView . Ich biete benutzerdefinierte Symbole für einen NSBrowserCell in der Gliederung Spalte, aber ich habe den Abstand nicht ganz richtig in der Lage zu bekommen - das Ordnersymbol, um das Dreieck immer zu nahe erscheint, wie unten dargestellt. (FWIW, Versionen und BetterZip zeigen beide ähnliche Daten ohne die Abstandsprobleme).

NSOutlineView-icon-Abstand http://img.skitch.com/20090918-tgfjh9x8dhgqxqnb2su8fby4ng. jpg

Da nur Ordner-Symbole dieses Problem haben wird, ist mir egal wirklich nur um den Abstand in diesem Zusammenhang zu fixieren. (Anmerkung: Ich bin das Caching bereits die Symbole für die Wiederverwendung, so habe ich kein Problem mit Manipulation des Ordnerbild, wenn nötig, da es nur einmal sowieso passieren wird.) Ich bin nicht sicher, ob es etwas, was ich in der Instanz NSBrowserCell einstellen , aber ich habe nicht gefunden, zu versuchen, etwas, das noch nicht aus Mangel funktioniert.


Für die Neugierigen, JarScan ist ein handliches (kostenlos) Kommandozeilen-Tool zum Auffinden von Java-Klassen in JAR Dateien.

War es hilfreich?

Lösung

Die "outline Tabellenspalte" (siehe -[NSOutlineView outlineTableColumn] ) ist die NSTableColumn dass das Dreieck und der linken padding zieht je nach Bedarf die Hierarchie anzuzeigen. Die Zelle Standard für Tabelleninhalt Anzeige ist ein NSTextFieldCell . Um den Abstand zu erhöhen Sie sehen, haben Sie die Zeichnung in einer benutzerdefinierten NSTextFieldCell Unterklasse zu tun. Der Abstand wird durch Ziehen Sie Ihr Bild mit einer x-Offset erreicht. (Die Gliederungsansicht wird das Dreiecksymbol ziehen, unabhängig davon NSCell Unterklasse verwendet wird.)

Beachten Sie, dass Sie die folgenden Methoden können außer Kraft zu setzen korrekt zu ziehen, wenn die Zelle eingegeben werden kann, für die Bearbeitung ausgewählt, und die Tooltip:

Standardmäßig Ihren kundenspezifischen Text Rects wird durch das Textfeld ignoriert werden und diese werden ziehen seltsam.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top