2017-11-25 73 views
-1

我想使用NSButton的integerValue傳遞方法中的信息,並遇到一個奇怪的錯誤:無論我將值設置爲 - integerValue,stringValue還是floatValue,當我讀取它時,它都是1.NSButton的值爲1

NSButton從繼承的NSControl和應該有通常的設定值的......但所有這些,包括字符串,解析爲1

什麼我可以在NSControl.h或NSButton看到。 h指向xxValue是普通屬性以外的任何東西。

我正在Xcode 9/Swift 4/macOS 10.12.6中工作 - 這是一個已知問題嗎?這是記錄在任何地方?我已經使用.tag作爲解決方法,但不願意。

+1

不要使用* control *的整數值來檢索信息,這是非常糟糕的做法。 – the4kman

+0

「無論我爲其設置一個值 - 無論是integerValue,stringValue還是floatValue,當我讀出它時,它都是1.」沒有人看到這一點,因爲你沒有顯示一行工作。 –

+0

@ the4kman我不打算去,但我需要一種快速的方式來跟蹤我正在測試的某個發件人,並且動態地更改一個按鈕的標記,這在概念上似乎更可疑(但是幫助我跟蹤了一個技巧下來我的bug。有時我只想要一個診斷有效載荷)。一旦我偶然發現,我試圖找出它來自哪裏以及我如何發現。 –

回答

3

這不是一個錯誤。

documentation of NSButton

對於大多數類型的按鈕,按鈕的值匹配其狀態的值是1時,0爲關閉,或-1混合。對於壓敏按鈕,按鈕的值代表壓力水平。

+0

謝謝 - 我*知道*我錯過了一些東西,我無法弄清楚什麼。我顯然沒有仔細閱讀介紹性文字。 Riddle解決了。 –