[英]Add / Remove buttons in NSOutlineView
我有一個Source-View( NSOutlineView
),底部有兩個按鈕。 我添加了一個NSBox
以便當它們位於按鈕后面時,這些項目不會“閃耀”。
當窗口處於活動狀態時,此工作正常:
但是一旦我停用窗口, NSBox
仍然具有該活動顏色,而不是與NSOutlineView
的背景顏色匹配的暗灰色版本:
如何確保這兩種顏色始終匹配。 使用特定顏色也是一種黑客攻擊,因為NSOutline
使用的顏色可能會在某些時候發生變化。
更新 :Apple的Mail.app以及Things似乎都有解決該問題的方法。 : - /
@Neha讓我找到解決方案的正確方法。
我用Ruby寫它是因為我使用Rubymotion但它很容易翻譯:)
假設您有一個NSBox的box
插座,您可以在窗口失去焦點時將其設置為透明,並在它成為關鍵窗口時使用相應的委托方法執行相反的操作:
def windowDidBecomeKey(notification)
box.setTransparent(false)
end
def windowDidResignKey(notification)
box.setTransparent(true)
end
結果看起來很好:
沒有它:
在NSBox
的屬性檢查器中,將display設置為transparent
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.