gpt4 book ai didi

objective-c - 使用图像作为 NSTextField 的背景

转载 作者:行者123 更新时间:2023-12-03 16:24:02 27 4
gpt4 key购买 nike

有没有办法使用 jpeg/png 图像作为 NSTextField 的背景?

最佳答案

1 个解决方案:您可以简单地这样做:

NSImage *image = ...; //image for background
[_textfieldOutlet setBackgroundColor:[NSColor colorWithPatternImage:image]];

结果:

NSTextField with background

<小时/>

2个解决方案:您可以像这样子类化您的NSTextField:

#import "TextFieldSubclass.h"

@implementation TextFieldSubclass

- (void)awakeFromNib
{
[self setDrawsBackground:NO];
}

- (void)drawRect:(NSRect)rect
{
[super drawRect:rect];

NSImage *image = ...; //image for background
[image setFlipped:YES]; //image need to be flipped

//use this if You need borders

NSRect rectForBorders = NSMakeRect(2, 2, rect.size.width-4, rect.size.height-4);
[image drawInRect:rectForBorders fromRect:rectForBorders operation:NSCompositeSourceOver fraction:1.0];

//if You don't need borders use this:

//[image drawInRect:rect fromRect:rect operation:NSCompositeSourceOver fraction:1.0];
}

@end

带边框的结果:

with border

无边框结果:

without border

关于objective-c - 使用图像作为 NSTextField 的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10613870/

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