Macos OSX中NSSecureTextFieldCell上的圆角
我已经设法将NSTextFieldCell子类化,以便在NSTextField上获得圆角。我想对NSSecureTextField执行同样的操作,但是子类化NSSecureTextFieldCell没有任何效果 视图中的Macos OSX中NSSecureTextFieldCell上的圆角,macos,Macos,我已经设法将NSTextFieldCell子类化,以便在NSTextField上获得圆角。我想对NSSecureTextField执行同样的操作,但是子类化NSSecureTextFieldCell没有任何效果 视图中的-(void)drawWithFrame:(NSRect)cellFrame:(NSView*)controlView{..}永远不会被调用 有人能给NSSecureTextField提供更圆的角吗?如果是这样,完成这项工作的最佳方法是什么 感谢您的帮助。解决了这个问题。。以防有
-(void)drawWithFrame:(NSRect)cellFrame:(NSView*)controlView{..}
永远不会被调用
有人能给NSSecureTextField提供更圆的角吗?如果是这样,完成这项工作的最佳方法是什么
感谢您的帮助。解决了这个问题。。以防有人在寻找解决方案。。 这是指向正确答案的链接。。以及代码片段 因此,上面提到的诀窍是。。在IB中添加常规文本字段。。但将其单元格设置为
CustomNSSecureTextFieldCell
@interface CustomNSSecureTextFieldCell : NSSecureTextFieldCell
@end
@implementation CustomNSSecureTextFieldCell
- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView {
NSBezierPath *betterBounds = [NSBezierPath bezierPathWithRoundedRect:cellFrame xRadius:CORNER_RADIUS yRadius:CORNER_RADIUS];
[betterBounds addClip];
[super drawWithFrame:cellFrame inView:controlView];
if (self.isBezeled) {
[betterBounds setLineWidth:2];
[[NSColor colorWithCalibratedRed:0.510 green:0.643 blue:0.804 alpha:1] setStroke];
[betterBounds stroke];
}
}
@end