这次主要讲解一下如何通过编写代码的方式来实现一个窗口程序, 当然这个程序十分的简单, 不过它演示了一些我们应该了解的东西,因此应该可以更好的帮助我们了解XCode和Interface builder为我们的开发工作做了哪些工作。
大部分讲解Cocoa编程的书都会用到Xcode和interface builder,这两个工具的结合是开发Cocoa应用程序的最佳选择, 但是当中往往隐藏了许多细节的东西,为了对Cocoa的运作方式有更好的了解,我决定用代码来实现一些Interface Builder中Nib文件实现的部分功能,以此来研究Cocoa的运作方式。
下面我们先看看这个最简单的HelloWin的源代码。
#import <Cocoa/Cocoa.h>
int main(int argc,char* argv[])
{
NSautoreleasePool* pool = [[NSautoreleasePool alloc] init];
NSApplication* app = [NSApplication sharedApplication];
//Create the main window
NSRect rc = NSMakeRect(0,800,600);
NSUInteger uiStyle = NSTitleDWindowMask | NSResizableWindowMask | NSClosableWindowMask;
NSbackingStoreType backingStoreStyle = NSbackingStoreBuffered;
NSWindow* win = [[NSWindow alloc] initWithContentRect:rc styleMask:uiStyle backing:backingStoreStyle defer:NO];
[win setTitle:@"HelloWin Test"];
[win makeKeyAndOrderFront:win];
[win makeMainWindow];
//Start the event loop by calling NSApp run
[NSApp run];
[pool drain];
return 0;
}
编译命令如下:
gcc HelloWin.m -framework Cocoa -o HelloWin
所有的Cocoa程序都要连接Cocoa这个Framework,Cocoa Framework会自动引用其他需要的framework,比如Foundation Framework。这个编译指令生成的程序名字叫HelloWin,你可以通过在终端下执行下面的命令来看看这个程序的运行情况。
./HelloWin
窗口显示如下
以上是内存溢出为你收集整理的HelloWin Demo with codes全部内容,希望文章能够帮你解决HelloWin Demo with codes所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)