Ich benutze eine NSComboBox und möchte einige der Einträge in der Popup-Liste rot markieren. Ich konnte keine geeignete Methode zum Überschreiben in NSComboBoxCell finden. Irgendeine Idee?Wie wird Text im Popup-Menü von NSComboBox eingefärbt?
Antwort
Wie wäre es mit NSCell
's -setAttributedStringValue:
Methode? Erstellen Sie einfach einen NSAttributedString
, der die Farbe hat, die Sie für den Schlüssel NSForegroundColorAttributeName
festlegen möchten, und Sie sollten gut gehen.
Dies würde die Farbe des aktuell angezeigten Textes ändern. In der Popup-Menüliste, die beim Klicken auf die Dreiecke angezeigt wird, möchte ich eine andere Farbe und dann schwarze Strings festlegen. Ich möchte einige Werte in der Liste hervorheben. In meinem Anwendungsfall möchte ich empfohlene Werte hervorheben, die der Benutzer aus der Popup-Liste auswählen sollte. – cocoafan
Sie müssen die Menüelemente der Popup-Taste direkt ändern, aber es ist nicht sehr schwer. Sie sollten nicht einmal Unterklassen benötigen, Sie können alles vom Controller aus tun.
NSMenu *menu = [popUpButton menu];
NSMenuItem *item = [menu itemWithTag:100];
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor redColor], NSForegroundColorAttributeName, nil];
NSAttributedString *string = [[NSAttributedString alloc] initWithString:[item title] attributes:attributes];
[item setAttributedTitle:string];
Sie wollen wahrscheinlich Attribute aus dem bestehenden zugeschrieben Zeichenfolge Titel kopieren, so dass die Schriftart und Größe gleich bleiben, aber das sollte Ihnen den Einstieg.
Danke für die Antwort. Leider hat eine NSComboBox kein Menü. NSPopUpButton hat ein Menü. Eigentlich verwende ich nur die NSComboBoxCell in einem NSTableView. – cocoafan
- 1. Wie fügt man NSComboBox einen Text und einen Wert hinzu?
- 2. Android Popupmenü Textfarbe (AppCompat)
- 3. NSComboBox Mit Dateiauswahl
- 4. Wie wird der Canvas-Bereich mit reinem GDI eingefärbt (mit dem angegebenen Alpha-Wert eingefärbt)?
- 5. Artikel aus Popupmenü ausblenden
- 6. Wie kann GuideLine in Plottable.js eingefärbt werden?
- 7. Text wird nicht im Hover angezeigt
- 8. Wie wird Text anstelle von Zeichen ausgewählt?
- 9. Wie wird Rich Text im Tooltip ASP.Net angezeigt?
- 10. Wie wird der Text im EditText des durchsuchbaren Elements kleingeschrieben?
- 11. Bearbeiten von Text im Editor
- 12. Styling im Text (TextView)
- 13. Platzieren von Text im Bild auf Kanten
- 14. SVG-Element - Handhabung und Auswahl von Text
- 15. Bildausrichtung im Text?
- 16. Wie wird lokalisierter Text in einer bestimmten Sprache anstatt im Standardmodus angezeigt (im Design-Modus)?
- 17. Platzierung Text im Zentrum von svg
- 18. Wie erhalten Sie den Text von allen Elementen im Layout
- 19. Anklickbarer Link im Text von mailto
- 20. den Text im Feld eingegeben wird, wenn auf Dropdown
- 21. Datumsliste im Text
- 22. UI Test Löschen von Text im Textfeld
- 23. Div Text angezeigt wird nicht, wie es
- 24. Methode zum Abgleichen von URLs im Text
- 25. Ausrichten von Text im Bootstrap-Tooltip
- 26. Löschen von Text im Eingabefeld funktioniert nicht
- 27. Mehrzeilen im Text entfernen
- 28. Durch Drücken der Taste/Escape wird der Text im Eingabefeld
- 29. Format Text im Rich Text Box
- 30. NSRectFill in NSTextView wird von Text überschrieben
Ich bin immer noch fest, irgendwelche Ideen? – cocoafan