2009-12-30 41 views
5

要開始,還有其內容是「服務器」對象的數組的NSArrayController(「服務器」)。爲什麼我的NSTableView中的圖像淡出?

我也有一列的NSTableView。該列綁定到服務器的「arrangeObjects.status」屬性。

我使用自定義NSValueConverter將該狀態置於dataCell列的圖像中,該列爲NSImageCell

我不明白是爲什麼,在該列中顯示的圖像是正確的,但一直淡出。爲了測試,我在表格視圖之外有相同的圖像進行比較,並且它很好。圖像中的顏色不是半透明的。

是否NSImageCell繪製圖像作爲褪色?有什麼我可以在IB中配置,將他們完全飽和?

回答

11

從吉姆·科雷亞在可可開發:

「在10.6,NSImageView將利用其內容爲灰色當控制被禁用

你結合了。‘有條件設置啓用’開啓」。

+0

我有同樣的問題,但感謝你我已解決。謝謝! – Dev 2011-05-08 13:36:08

1

您可能必須(在IB或取消選中)設置爲NO圖像視圖單元格或列的「已啓用」屬性。我相信這會淡化顯示的圖像。

+0

嗯......「已啓用」屬性爲圖像細胞絕對選中爲是「已啓用」屬性表本身。表列沒有啓用屬性。啓用的屬性也不受任何約束。 但是,通過進行像素比較,圖像顯然正在繪製,就像它們被禁用一樣。 – 2009-12-31 05:43:59

+0

純粹的猜測:它可能是價值轉換器的使用(如果它不知道如何「設置」一個新的圖像,NSImageViewCell可以被綁定機制強制禁用)。您應該能夠在不進行任何轉換的情況下爲其提供圖像的原始數據。 – 2009-12-31 16:19:50

+0

想通了。這對我來說似乎很奇怪,但將NSImageCell的邊框屬性設置爲「無」意味着它將半透明地繪製圖像。爲什麼它這樣做,我不知道。 – 2009-12-31 20:53:16