2
我正在設置我的酷應用程序的偏好窗口,它顯示一些文本。在偏好設置中,我設置了一個打開NSFontPanel
的按鈕。我的應用程序存儲用戶首選的文本顏色和字體,並始終以這些設置打開,以便用戶永遠不必看到以不喜歡的顏色或字體顯示的文本。如何設置NSFontPanel的默認值?
問題是,雖然我的應用程序能夠記住這些首選項,但NSFontPanel
有問題。當我第一次打開字體面板時,所有字段的默認值都會重置。在擺弄它們之後,關閉面板,然後重新打開面板,保留正確的值。只有當我第一次打開面板時纔會出現問題。
我不明白爲什麼會發生這種情況!
我一直小心地設置在面板的字體和顏色我的應用程序啓動時,你可以從這個片段看到:
def show_entry_font_menu(sender)
font_manager = NSFontManager.sharedFontManager
color_panel = NSColorPanel.sharedColorPanel
font_manager.setDelegate self
color_panel.setDelegate self
font_manager.setSelectedFont(preferences.entry_font, isMultiple:false)
font_panel = font_manager.fontPanel(true)
font_panel.makeKeyAndOrderFront(sender)
attributes = preferences.entry_font_attributes
color = preferences.entry_font_color
font_manager.setSelectedAttributes(attributes, isMultiple:false)
color_panel.setColor(color) if preferences.entry_font_color
self.did_open_font_panel = true
end
哈!這是我從未想過的事情! – Ziggy