我想用3张图片绘制自己的TextField。NSTextField自定义背景,边框和边角
- input_l.png - 输入的中间部分 - - 1px的宽 - 应该伸展或乘以填充中间部分
- input_r.png - 右侧 输入
- input_m.png的左侧
所有图像都包含边框,背景,阴影,只需要用这些图片绘制它就可以了。
但我不能设法用的NSTextField的子类,这些方法绘制:
- (void)awakeFromNib
{
[self setDrawsBackground:NO];
}
- (void)drawRect:(NSRect)rect
{
NSDrawThreePartImage(rect, [NSImage imageNamed:@"input_l.png"], [NSImage imageNamed:@"input_m.png"], [NSImage imageNamed:@"input_r.png"], NO, NSCompositeSourceOut, 1.0, NO);
[super drawRect:rect];
}
它吸引了黑色背景的文本/占位符。
这是它应该是怎样看: http://d.pr/i/VLEN
如果有任何其他方式,更好,作出这样的请告诉我:)它只是发生在我,我可以用不宽1px的背景图片边界绘制这个和代码使角落圆角,并以某种方式绘制甚至边框。不过,我仍然想知道如何按照我尝试的方式进行操作,以备将来使用。
所以我试图画[NSBezierPath bezierPathWithRoundedRect:xRadius:yRadius]的边框,它看起来有点丑。它像一个像素化。 –