Wie erstellst du einen benutzerdefinierten thematischen NSButton?

8

Wie erstelle ich einen benutzerdefinierten thematischen NSButton? Ich meine nicht etwa die Hintergrundfarbe zu ändern oder von abgerundeten Kanten zu quadratischen Kanten zu wechseln. Ich möchte das gesamte Erscheinungsbild des Buttons ersetzen. Ist das in Cocoa überhaupt möglich? Natürlich müsste ich die NSButton-Klasse ableiten und von dort aus gehen. Jede Hilfe würde sehr geschätzt werden.

    
John Scipione 28.10.2009, 10:31
quelle

1 Antwort

12

Eigentlich musst du NSButtonCell ableiten. Sie sollten Apples Dokumentation um ein besseres Verständnis dafür zu bekommen, wie sie interagieren. Sie werden wahrscheinlich weiterhin NSButton ableiten müssen, damit auch Ihre Unterklasse NSButtonCell verwendet wird.

Bei einer Schaltfläche wird die meiste Arbeit in drawBezelWithFrame:inView: erledigt. Wenn Sie die Art ändern möchten, wie der Text oder das Bild gezeichnet wird, überschreiben Sie drawText:withFrame:inView: und drawImage:withFrame:inView: .

    
Alex 28.10.2009, 15:46
quelle

Tags und Links