我正在动态添加一个NSTextField窗口,我有渲染问题.我将背景颜色设置为黑色,将文本颜色设置为白色.这些都可以工作,但它们似乎是一个矩形,它是文本的一部分,始终是白色的.有谁知道我可能做错了什么?如何摆脱文本周围的白色背景?代码如下:
//Create rectangle to size text field
NSRect textFieldRect = NSMakeRect(300, 300, 300, 54);
//Instantiate text field and set defaults
NSTextField* textField = [[NSTextField alloc] initWithFrame:textFieldRect];
[textField setFont:[NSFont fontWithName:@"Arial" size:48]];
[textField setTextColor:[NSColor whiteColor]];
[textField setStringValue:@"Some Text"];
[textField setBackgroundColor:[NSColor blackColor]];
[textField setDrawsBackground:YES];
[textField setBordered:NO];
[[window contentView] addSubview:textField];
Run Code Online (Sandbox Code Playgroud) 在我的应用程序上,我需要一个按钮,所以当它被点击时,会启动YouTube视频.
那我该怎么做呢?
我希望在试用期内发布我的软件,我想知道如何在标题栏的右侧显示一个链接,告诉他们他们的试用期将持续多长时间:
.
有人有什么建议吗?
我有点实现了一个自定义滑块单元,可以使用滚动条和旋钮的图像进行绘制.现在唯一的障碍就是这个,当我快速拖动旋钮时,图像变得混乱.我发布了一个屏幕截图.

这是代码:
#import "customSliderCell.h"
@implementation customSliderCell
- (void)drawKnob:(NSRect)knobRect {
NSImage * knob = knobImage;
[[self controlView] lockFocus];
[knob
compositeToPoint:NSMakePoint(knobRect.origin.x,knobRect.origin.y+knobRect.size.height)
operation:NSCompositeSourceOver];
[[self controlView] unlockFocus];
}
- (void)drawBarInside:(NSRect)rect flipped:(BOOL)flipped {
rect.size.height = 8;
NSRect leftRect = rect;
leftRect.origin.x=0;
leftRect.origin.y=2;
leftRect.size.width = knobrect.origin.x + (knobrect.size.width);
[leftBarImage setSize:leftRect.size];
[leftBarImage drawInRect:leftRect fromRect: NSZeroRect operation: NSCompositeSourceOver fraction:1];
NSRect rightRect = rect;
rightRect.origin.x=0;
rightRect.origin.y=2;
rightRect.origin.x = knobrect.origin.x;
[rightBarImage setSize:rightRect.size];
[rightBarImage drawInRect:rightRect fromRect: NSZeroRect operation: NSCompositeSourceOver fraction:1];
}
Run Code Online (Sandbox Code Playgroud)
啊,我很亲密.关于为什么会发生这种情况以及如何解决它的任何帮助将不胜感激,谢谢!
我试图在终端中自定义我的提示.为此,我尝试.bash_profile使用vim 进行编辑,但最终得到了一个.bash_profile.swp文件.在我在网上发现的一些帖子之后,我:recover在vim中使用了命令,它创建了一个新的.bash_profile,然后删除了.swp文件.但是,现在终端似乎没有用.当我打开它时,我收到以下消息:
-bash:c:找不到命令
-bash:end:命令未找到
[流程完成]
有人知道如何解决这个问题吗?
我正在尝试使用Objective-C编写的代码确定两种颜色是否相同.
我正在使用这段代码来确定这两种颜色是否相同(目前用于调试目的)
NSLog(@"currentColor is %@", currentColor);
NSLog(@"Adjacent Color is %@",[[buttonArray objectAtIndex:1] backgroundColor]);
NSLog(@"%i",[[buttonArray objectAtIndex:1] backgroundColor]==currentColor);
Run Code Online (Sandbox Code Playgroud)
我的控制台正在显示
2009-10-20 00:27:10.814 colorGame[13588:207] currentColor is kCGColorSpaceModelRGB 0 0 1 1
2009-10-20 00:27:10.815 colorGame[13588:207] Adjacent Color is kCGColorSpaceModelRGB 0 0 1 1
2009-10-20 00:27:10.815 colorGame[13588:207] 0
Run Code Online (Sandbox Code Playgroud)
如果被问到我可以发布更多代码(我不知道是否真的有必要).当前颜色最初定义为
UIColor *currentColor;
Run Code Online (Sandbox Code Playgroud)
如果这是任何帮助.
我很确定我只是做比较错误,并且可能有一些可以比较颜色的内置方法,我只是不知道.
我有一个NSMenu包含NSMenuItems自定义视图.我想要它,以便当按下alt按钮时,菜单项将改变它们的一部分外观(通过它们的视图).然而,我setAlternative在NSMenuItem文档中发现,实际上我只能在NSMenuItems没有自定义视图的情况下使用它.一旦我设置了自定义视图,就会显示所有菜单项.此外,我尝试在菜单打开时获取按键事件.由于其他运行循环,NSApplication's sendEvent:在菜单关闭之前不会接收事件.因此,我不能只是拦截即将发生的事件.
有没有人知道如何通过委托或子类化来通知菜单打开时何时按下alt键?
我有一个常规UITableViewCell的自定义颜色,但我怎么能改变边框?
目前它看起来很丑陋:

我只想要一个小小的白色边框.
我知道NSString并且CFString是收费桥,他们可以通过这种方式进行转换.
CFStringRef cfStr;
NSString* anStr=(NSString*)cfStr;
Run Code Online (Sandbox Code Playgroud)
但是,当我在处理地址簿的情况下转换字符串时
NSString* homeLabel=(NSString*)kABWorkLabel;
Run Code Online (Sandbox Code Playgroud)
那么homeLabel是"_$!<Work>!$_"; 另一个CFStringRef在addressbook属性中预定义的是相同的.
在我的程序中,我想获得标签和标签项的信息.
NSString* label=ABMultiValueCopyLabelAtIndex(multi,i);
Run Code Online (Sandbox Code Playgroud)
那么如何正确获取标签的字符串?
是否有机会以编程方式更改NSCollectionView的背景颜色?
我正在尝试子类化..但不工作..
@interface CollectionViewBg : NSCollectionView
Run Code Online (Sandbox Code Playgroud)
在.m
[self setBackgroundColors:[NSArray arrayWithObjects:[NSColor blueColor], nil]];
Run Code Online (Sandbox Code Playgroud) objective-c ×6
cocoa ×4
iphone ×4
addressbook ×1
colors ×1
comparison ×1
ios ×1
iterm ×1
macos ×1
macos-carbon ×1
menu ×1
nsmenu ×1
nsmenuitem ×1
nsslider ×1
nstextfield ×1
terminal ×1
titlebar ×1
uitableview ×1
youtube ×1