6
我想爲我的應用程序創建一個自定義開關,其中爲可能的狀態(開,關,mousedown)提供三個圖像。整個外觀都包含在圖像中,所以我不希望Cocoa在mousedown期間自己突出(變暗)按鈕。用圖像自定義NSButtonCell並突出顯示
此刻,我創建了一個NSButtonCell子類,將NSButtonTypeMomentaryChange的斜角按鈕拖到我的視圖中,並將按鈕單元類類型自定義爲我的子類。子類只是實現awakeFromNib嘗試,並設置一些預期的行爲:
- (void)awakeFromNib
{
[self setShowsStateBy:NSContentsCellMask];
[self setHighlightsBy:NSContentsCellMask];
}
而且我認爲他(根據文檔)將禁用按鈕的鼠標按下昏暗。它不是。
這是我的立場,現在我有兩個問題:
- 我如何設置類扣式只顯示我的鼠標按下準備好的圖片,不變暗/畫按鈕周圍的邊界?
- 什麼是最乾淨/最正確的方式來實現開關的其他行爲,即根據以前的狀態顯示off/on位置,並能夠正確地將其狀態正確地傳達給其他對象?
就是這樣,謝謝。 – mss