我对此做了很多研究,但没有发现任何有用的东西.我想在目标c中制作一个简单的程序供个人使用,打开文件并提供有关它们的信息.我遇到的唯一问题是我找不到我正在打开的文件的文件.没有简单地查看扩展,有没有办法在目标c中找到文件的完整文件格式?
如果可能的话,我还希望能够以不同的格式保存该文件.有关此主题的信息对于此应用程序也很重要.将非常感谢帮助.
让我先从代码开始.
- (NSPoint*) pointFromPoint:(NSPoint*)point withDistance:(float)distance towardAngle:(float)angle; {
float newX = distance * cos(angle);
float newY = distance * sin(angle);
NSPoint * anNSPoint;
anNSPoint.x = newX;
anNSPoint.y = newY;
return thePoint;
}
Run Code Online (Sandbox Code Playgroud)
根据我的知识,这应该是完美的.如果我调用此代码,它应该返回和x值0以及y值2.
somePoint = [NSPoint pointFromPoint:somePoint withDistance:2 towardAngle:90];
Run Code Online (Sandbox Code Playgroud)
相反,我得到x了1.05和a y的价值1.70.如何根据角度和距离找到x和y坐标?
补充说明:我已经看过math.stackexchange.com,但那里的公式让我想到了这一点.我需要代码,而不是正常的数学,因为我知道我可能会搞砸了.
我正在创建一个必须使用该system(const char*)功能来执行"繁重工作" 的应用程序,并且我需要能够为用户提供粗略的进度百分比.例如,如果操作系统正在为您移动文件,它会为您提供一个进度条,其中包含移动的数据量以及窗口上显示的要移动的数据量.我需要这样的东西.如何才能做到这一点?
编辑:基本上,我给用户提供了以压缩格式保存文件的选项.如果他们这样做,它会正常保存然后运行此代码:
char* command = (char*)[[NSString stringWithFormat:@"tar -jcvf %@.tar.bz2 %@", saveurl.path, filename] cStringUsingEncoding:NSUTF8StringEncoding];
system(command);
Run Code Online (Sandbox Code Playgroud)
有时这需要一段时间(应用处理视频文件),所以我希望能够给他们一个估计的完成时间.
可能重复:
NSArray中的最大对象数量
我只是想知道我可以在NSArray中放入多少个对象,因为我需要找到像数组一样的函数,但我需要保存大量数据(在900到1200个字符串之间).我正在考虑使用NSDictionary来保存数据,但它似乎不符合要求.你认为NSArray会持有那么多对象,还是应该使用NSDictionary?
我正在制作一个图像编辑应用程序,但它看起来非常不完整,没有像在Photoshop中用于画笔的光标.如何设置图标,并在退出应用程序时将其更改回来?
这是我的头文件中的代码(以防万一需要):
@interface test : NSWindow <NSWindowDelegate> {
IBOutlet id myView;
}
@end
Run Code Online (Sandbox Code Playgroud)
myView是一个NSView(customView),它将显示所有内容.
我一直在尝试制作一个简单的绘图程序.最近,我已经想出为此目的在自定义视图中绘制形状.我的问题是我必须在一个时间点绘制所有内容.我不知道这是否真的有意义,但在我看来它只调用drawRect一次方法,因为"一次"是在启动时.
到目前为止,这是我的代码:
头文件.
NSBezierPath *thePath;
NSColor *theColor;
NSTimer *updateTimer;
NSPoint *mousePoint;
int x = 0;
int y = 0;
@interface test : NSView {
IBOutlet NSView *myView;
}
@property (readwrite) NSPoint mousePoint;
@end
Run Code Online (Sandbox Code Playgroud)
然后,在.m文件中实现.
@implementation test
@synthesize mousePoint;
- (void) mouseDown:(NSEvent*)someEvent {
CGEventRef ourEvent = CGEventCreate(NULL);
mousePoint = CGEventGetLocation(ourEvent);
NSLog(@"Location: x= %f, y = %f", (float)mousePoint.x, (float)mousePoint.y);
thePath = [NSBezierPath bezierPathWithRect:NSMakeRect(mousePoint.x, mousePoint.y, 10, 10)];
theColor = [NSColor blackColor];
}
- (void) mouseDragged:(NSEvent *)someEvent {
mousePoint = [someEvent locationInWindow]; …Run Code Online (Sandbox Code Playgroud) 我知道之前曾问过这种问题,但我不能为我的生活找到它.我需要创建一个弹出窗口(蓝色窗口之一,就像在应用程序商店中输入密码一样).所以,我有三个简单的(希望)问题.
什么是弹出窗口?
如何只使用可滚动文本和按钮制作一个?
我如何弄清楚按钮按下的时间,并用它做一些事情?
注意:我只问三个问题,因为我认为他们可以很容易地回答.事实上,我认为第一个问题可以在用于显示弹出窗口的代码中得到解答.第三个问题需要回答才能使用此功能.
此外,这不是一个"告诉我teh codez"的问题.我只想指出讨论这些问题的文档,尽管直接答案非常有用.
我应该制作一个生成完全数独谜题的应用程序.我可以使用以下代码正确生成第一行,但是,无论我做什么,我都无法使下一行正常工作.他们都生成了正确的方法,因为我以随机的顺序得到数字1-9,但我无法让它制作一个可行的数独谜题.
码:
NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:8];
for (int integerA = 0; integerA < 10; integerA ++) {
[array addObject:[NSNumber numberWithInt:integerA]];
//NSLog(@"%i", (integerA + 1));
}
for (int x = 8; x >= 0; x --) {
[array exchangeObjectAtIndex:(arc4random() % (x + 1)) withObjectAtIndex:x];
section[x][0] = ([[array objectAtIndex:x] intValue] + 1);
for (int y = 8; y >= 0; y --) {
if (0) {
}
}
}
Run Code Online (Sandbox Code Playgroud)
那部分有效.如果我尝试创建另一个数组并为每个"x"值生成"y"值,那就太奇怪了.如果没有多条条件语句,是否有一种有效的方法来生成完全解决的数独谜题?
"奇怪的结果":
2 0 1 | 2 3 3 | 5 …Run Code Online (Sandbox Code Playgroud) objective-c ×7
cocoa ×6
c ×1
file ×1
iphone ×1
macos ×1
mouse-cursor ×1
nsarray ×1
nsdictionary ×1
nsview ×1
system ×1