小编ben*_*9a4的帖子

更改 NSTextField 的边框“发光”颜色

我在 MainMenu.xib 中有一个 NSText 字段,我有一个操作集来验证它的电子邮件地址。我希望 NSTexFields 边框颜色(蓝色发光)在我的操作返回 NO 时为红色,当操作返回 YES 时为绿色。这是操作:

-(BOOL) validEmail:(NSString*) emailString {
    NSString *regExPattern = @"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$";
    NSRegularExpression *regEx = [[NSRegularExpression alloc] initWithPattern:regExPattern     options:NSRegularExpressionCaseInsensitive error:nil];
    NSUInteger regExMatches = [regEx numberOfMatchesInString:emailString options:0 range:NSMakeRange(0, [emailString length])];
    NSLog(@"%ld", regExMatches);
    if (regExMatches == 0) {
        return NO;
    } else
        return YES;
}  
Run Code Online (Sandbox Code Playgroud)

我现在调用这个函数并设置文本颜色,但我想改为设置 NSTextField 的发光颜色。

- (void) controlTextDidChange:(NSNotification *)obj{
    if ([obj object] == emailS) {
        if ([self validEmail:[[obj object] stringValue]]) {
            [[obj object] setTextColor:[NSColor colorWithSRGBRed:0 green:.59 blue:0 alpha:1.0]];
            [reviewButton setEnabled:YES];
        } else …
Run Code Online (Sandbox Code Playgroud)

cocoa border colors nstextfield

8
推荐指数
2
解决办法
2673
查看次数

标签 统计

border ×1

cocoa ×1

colors ×1

nstextfield ×1