2012-04-25 51 views
2

我正在構建一個應用程序,以根據用戶選擇的顏色生成顏色數組。如何將NSColorPicker添加到應用程序的主窗口?

Mac OS X上用於顏色選擇的默認值是打開一個包含多個NSColorPickers的NSColorPanel。但是,由於顏色選擇過程是用戶與應用程序的主要交互過程,因此最好避免額外的點擊和麪板彈出,而採用更直接的方式。

那麼,有沒有辦法將NSColorPicker對象添加到窗口?

回答

1

Interresting Question。

我非常懷疑它(但願意被證明是錯誤的)。 NSColorPickers不是NSControls(也不是NSCells),所以沒有乾淨的包裝來插入窗口。

即使您要實例化NSColorPanel並獲取對其contentView的引用,並將其複製(將所有定義了顏色選擇控件的元素)複製到您自己的窗口中......但沒有明顯的獲取顏色值的方法。 NSColorPickers是插件,因此您無法預見ColorPicker的控件。

我能看到的唯一的另一種方式(那就是拉伸)將會直接手動加載NSColorPickers plug-ins。我不知道這會是多麼成功。

提交錯誤報告並請求該功能?

+0

我想這是關係到他們承擔了NSColorPanel單身的做法。我將不得不寫我自己的課程。 – Rodrigo 2012-04-27 00:03:33

2

我知道這是一個較老的問題,但檢查出NSColorWellFrom the docs

NSColorWell is an NSControl for selecting and displaying a single color value. 
+0

解決方案是使用NSColorWell作爲你的朋友說的;點擊這些將調出NSColorPicker(面板)。 – geowar 2015-03-27 01:19:45

相關問題