代码之家  ›  专栏  ›  技术社区  ›  Lothar

验证NSTextField中的十进制最大/最小值

  •  0
  • Lothar  · 技术社区  · 15 年前

    我的问题来自一个简单的事实,即我找不到一种方法来获取文本字段的整个新字符串值。

    我尝试使用委托函数:

    - (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString
    

    但这并没有给我提供验证所需的替换字符串,而不是完整字符串。我以后可以用文字

    - (void)textDidChange:(NSNotification *)aNotification 
    - (void)controlTextDidChange:(NSNotification *)aNotification
    

    但是当我接到这个电话时,已经很晚了,最后一个文本字段的内容已经不见了。那么处理这个问题最好的方法是什么呢?

    binding NSTextField to NSNumber 但我不知道怎么解决我的问题。

    1 回复  |  直到 8 年前
        1
  •  3
  •   Peter Hosey    15 年前

    我尝试使用委托函数:

    - (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString
    

    但这并没有给我提供验证所需的替换字符串,而不是完整字符串。

    除了它:你可以要求文本视图 the previous complete string , apply the change yourself 创建该字符串的可变副本,然后验证生成的字符串。返回 NO 如果更改将导致无效输入。

    推荐文章