我在Xcode和MacOS應用程序的新手。請讓我幫忙。我無法理解如何編寫操作(或事件我不知道)創建限制字符集並檢查兼容字符(0-9,e,。)上的NSTextField。我讀了如何創建字符集(NSCharacterSet),但不能接下來需要什麼。我想禁止在我的NSTextField上輸入錯誤的字符。如何在Objective-C中處理NSTextField和其他事件的鍵盤事件?像例子。NSTextField字符集限制
回答
我會在textField上放一個NSFormatter
。這是可可方式:d
textField.formatter = myFormatter;
..例如一個NSNumberFormatter或者如果需要的話一個自定義
看到
我在Cocoadev上發現了一篇文章,可以幫助你。 (http://lists.apple.com/archives/cocoa-dev/2006/Aug/msg01492.html)
你要的註冊通知時通知文本的變化,例如:
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(textDidChange:)
name: NSControlTextDidChangeNotification
object: textField];
然後在您的textDidChange:方法(或任何你的名字),你可以修改輸入。例如,爲了確保大寫:
[[textField setStringValue: [[textField stringValue] uppercaseString]];
如果你想限制的數字量,你可以只使用deleteCharactersInRange:的NSMutableString的方法。如果您想限制在文本字段中找到的文本類型,可以使用包含所有允許的字符的NSMutableCharacterSet,然後使用NSScanner的scanCharactersFromSet:intoString方法過濾掉不需要的字符。
的作品,而只是實現委託比較容易:d – 2013-03-18 19:57:05
是啊,我是那種不知道他們爲什麼通過'NSNotification'做的,而不是的代表。 – StilesCrisis 2013-03-18 19:57:57
在OSX上,他們只是發送nsnotifications - 總是 - 代表總是第一個接收者,雖然 – 2013-03-18 19:58:59
- 1. 限制Webfont的字符集?
- 2. XSD字符串限制到字符集
- 3. MacRuby:限制NSTextField爲整數
- 4. 將限制設置爲NSTextField
- 5. NSTextField setStringValue:將字符串附加到NSTextField
- 6. 限制用戶密碼字符集
- 7. DESCryptoServiceProvider .net和限制加密字符集
- 8. 雙字符限制字符
- 9. 如何限制字符串到JavaScript中的特定字符集?
- 10. Oracle JDBC字符集和4000字符限制
- 11. NSTextField設置最大字符
- 12. 限制字符jquery
- 13. richTextBox字符限制?
- 14. simpledb字符限制?
- 15. GHCI字符限制?
- 16. jquery限制字符
- 17. 字符串限制字 - UTF8
- 18. 如何繪製旋轉文字而不限於MacRoman字符集?
- 19. 限制文本輸入字段中的字符集
- 20. 字符串變量字符限制
- 21. TEXTBOX限制符號,字符和數字
- 22. 限制字符串字符 - PHP
- 23. 限制ASIHTTPRequest字符串
- 24. jquery ajax字符限制
- 25. 限制特殊字符
- 26. 限制Textarea字符串聯
- 27. JavaScript字符串限制?
- 28. 限制JTextField字符輸入
- 29. 處理GET字符限制
- 30. 限制LUIS字符數量?
是啊,它的好,但用戶可以輸入錯誤的字符在文本字段:(我認爲需要使用代表解決這個任務。知道:(。 – amigo 2013-03-19 12:36:26
我正確理解委託自動工作? – amigo 2013-03-19 12:38:18
teftField.delegate = self。然後實現NSTextFieldDelegate(它的一個或多個功能) – 2013-03-19 13:11:16