2011-03-21 35 views
0

您好,我有一個包含2行NSTextFields的框。cocoa textfield禁用不會禁用光標更改

此外,在特定操作上,會在這兩個文本框上顯示自定義的半透明視圖。然後在其他行動,消失。

當這些texfields覆蓋半透明視圖時,我希望它們變爲禁用狀態,並且當它們進入任何這些文本區域時,我的光標不會更改。然後我希望它們在我的自定義視圖消失時啓用。

我用下面的命令是:分別

[fileNameField setEnabled:NO]; 
[folderPathField setSelectable:NO]; 
[folderPathField setEnabled:NO]; 

[fileNameField setEnabled:YES]; 
[folderPathField setEnabled:YES]; 
[folderPathField setSelectable:YES]; 

問題是一個名爲fileNameField的對象確實發生了變化:它變得有點暗淡,並且沒有被選中,或者在光標位於文本區域時沒有改變光標。

但是,另一個,folderPathField也被禁用,不可能選擇文本,但它仍然會改變我的光標,當它進入它的區域。

這兩個文本框唯一的區別是:
1. fileNameField具有圓角邊框,而​​folderPathField沒有邊框。
2. fileNameField的佈局設置爲「Scrolls」和folderPathField - 「截斷」。

有人知道可能是什麼原因導致這種行爲?

回答

0

您需要將其設置爲不可編輯

[textfield SetEditable:NO]; 
+0

它沒有幫助。其實setSelectible也調用setEditable。如果文本字段不可選,則它也不可編輯。所以如果它可以選擇但不可編輯,它仍然會改變鼠標光標。而且,據我所知,setEnabled應該完成所有工作。如果視圖被禁用,它不能響應鼠標事件,但它在我的情況下。怎麼會這樣... – BartoNaz 2011-03-21 20:00:11