Mac开发
2017-08-03 本文已影响110人
孟轲666
由于工作的原因,本人要参与Mac开发,这方面知识纯小白一枚,从今天起记录Mac开发的点点滴滴.....
1.更好的理解AppKit框架的最好方法是从类NSControl开始。类NSButton,NSSlider,NSTextView,NSColorWell都是NSControl的子类。控制的必要动作是目标喝动作(target 和 action)。目标是一个指向对象的指针,动作是发送一个消息或者选择器到目标。
NSControl 的继承关系图- 继承关系最上层是NSObject.所有的类都继承自 NSObject,从它获得最基本的一些方法:retain,release,dealloc和init。NSResponder是NSObject的一个子类,NSResponder对象可以处理一些诸如mouseDown:和keyDown:之类的方法,NSView是NSResponder的一个子类,它描述了窗口上的一个位置,用来描述自己,也可以创建NSview的一个子类来显示图片,并与许用户拖曳。NSControl继承自NSview,增加了target和action。
- NSButton
2.1
-(void) setEnabled:(BOOL)yn;
激活按钮,用户可单击,禁用按钮后是灰色的。
- (NSInteger)state;
假如按钮是on,则返回NSOnState(值为1);假如按钮是off,则返回NSOffstate (值为0)。这个方法帮助开发者了解单选框是否选上。
-(void)setState:(NSInteger)aState;
这个方法设置按钮启用或没启用,允许在程序中检查单选框是否选上,设置状态为 NSOnState就表示单选框已选上,设置为NSOffstate酒表示不用选上。
3.NSSlider
-(void) setFloatValue:(float)x;
将滚动条滚动到x。
- (float)floatValue;
返回滚动条当前的值。
4.NSTextField
- 文本框都有一个占位符。当文本框清空时,占位符显示为灰色。
NSSecureTextField 是NSTextField的子类,用于密码输入,当用户输入字符时,用*符号代替显示,不能从NSSecureTextField的文本框进行复制和剪切。
- (NSString*) stringValue;
- (void)setStringValue:(NSString*)aString;
可进行文本框中字符读取和设置。
- (NSObject*)objectValue;
- (void)setObjectValue:(NSString*)obj;