gpt4 book ai didi

cocoa - 禁用 NSTextField 中的 Option-Enter 换行符?

转载 作者:行者123 更新时间:2023-12-03 16:34:37 26 4
gpt4 key购买 nike

我想禁止在 NSTextField 中输入换行符,默认情况下可以通过键入 Option-Enter(或 Option-Return)来实现。

虽然我发现some pages解释如何允许换行不必使用选项修饰符,我找不到任何完全禁用换行符的内容。

如何做到这一点?

最佳答案

您可以创建 NSFormatter 的子类并实现 isPartialStringValid:... 方法来阻止换行符。

- (BOOL)isPartialStringValid:(NSString **)partialStringPtr 
proposedSelectedRange:(NSRangePointer)proposedSelRangePtr
originalString:(NSString *)origString
originalSelectedRange:(NSRange)origSelRange
errorDescription:(NSString **)error
{
// the user may have:
// -- deleted the left most character
// -- deleted the last character and we have an empty string
// both cases are valid
if (proposedSelRangePtr->location == 0)
return YES;

unichar theChar = [*partialStringPtr characterAtIndex:proposedSelRangePtr->location - 1];

if ([[NSCharacterSet newlineCharacterSet] characterIsMember:theChar]) {
*error = nil;
NSBeep();
return NO;
}

return YES;
}

关于cocoa - 禁用 NSTextField 中的 Option-Enter 换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/578483/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com