cocoa - 强制 NSTextField 中的所有大写字母(Cocoa)

标签 cocoa nstextfield capitalization

有没有办法在 NSTextField 中强制使用大写字母?

我想创建一个用于输入邮政编码的文本字段,并且我希望输入的所有邮政编码都使用大写字母。

例如N1 3ET 代替:n1 3et

另外,我使用的是正则表达式,它只接受大写(我对正则表达式知之甚少,所以我不热衷于修改它)

谢谢!

迈克尔

最佳答案

你可以给 NSTextField 一个 delegate大致如下:

- (void)controlTextDidChange:(NSNotification *)aNotification{
    NSText *fieldEditor = [[aNotification userInfo] objectForKey:@"NSFieldEditor"];
    [fieldEditor setString:[[fieldEditor string] uppercaseString]];
}

它应该捕获文本更改通知并将文本大写。

关于cocoa - 强制 NSTextField 中的所有大写字母(Cocoa),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2035417/

相关文章:

swift - NSTextField 中的图像显示不正确

python - 为什么一些很可能知道 PEP8 的开发人员将他们的包名称大写? (例如 : Django, Sphinx、Fabric、...)

cocoa - 核心数据返回不正确的值(尽管几乎正确)

macos - 显示默认的关于对话框

swift - NSTableView 中的 NSTextField 不更新其值

swift - 如何使用Swift将句子的第一个字符大写

perl - 我应该如何大写 Perl?

Cocoa - 添加后 subview 不显示

swift - NSPopUpButton - 使用 Cocoa Binding 填充动态内容时的奇怪行为

macos - NSTextField 在 Swift 中绑定(bind)为 double,如何允许空白?