我想用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]的邊框,它看起來有點醜。它像一個像素化。 –