关于NSToolbar的使用
来源:互联网 发布:ce6800 开启端口自协商 编辑:程序博客网 时间:2024/05/16 08:57
在讨论苹果环境下的开发,不可避免会引用到官方文档:https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Toolbars/Toolbars.html
这里讨论的是使用代码来创建工具栏:
- - (void)layoutToolbar
- {
- NSToolbar *toolbar = [[NSToolbar alloc] initWithIdentifier:@"SimpleToolbar"];
- [toolbar setAllowsUserCustomization:NO];
- [toolbar setAutosavesConfiguration:NO];
- [toolbar setDisplayMode:NSToolbarDisplayModeIconOnly];
- [toolbar setSizeMode:NSToolbarSizeModeSmall];
- [toolbar setDelegate:self];
- [self.window setToolbar:toolbar];
- [toolbar release], toolbar = nil;
- }
在为toolbar设置了代理对象后,代理对象需要提供一些信息:
1. 默认使用哪些标识符;
2. 允许使用哪些标识符;
3. 为每个标识符提供对应的item。
- #pragma mark - NSToolbarDelegate
- - (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar *)toolbar
- {
- return @[SimpleToolbarItemIdentifier];
- }
- - (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar *)toolbar
- {
- return @[SimpleToolbarItemIdentifier];
- }
- - (NSToolbarItem *)toolbar:(NSToolbar *)toolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag
- {
- NSToolbarItem *toolbarItem = [[[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier] autorelease];
- if ([itemIdentifier isEqualToString:SimpleToolbarItemIdentifier]) {
- [toolbarItem setLabel:@"Add"];
- [toolbarItem setPaletteLabel:@"Add"];
- [toolbarItem setToolTip:@"Add"];
- [toolbarItem setImage:[NSImage imageNamed:@"addIcon"]];
- [toolbarItem setMinSize:CGSizeMake(25, 25)];
- [toolbarItem setMaxSize:CGSizeMake(100, 100)];
- [toolbarItem setTarget:self];
- [toolbarItem setAction:@selector(simpleToolbarItemDidClick:)];
- } else {
- toolbarItem = nil;
- }
- return toolbarItem;
- }
这样简单的代码就基本够用了。
0 0
- 关于NSToolbar的使用
- 关于NSToolbar的使用
- MAC OS X Cocoa NSToolbar 的使用
- NSToolBar
- NSToolBar
- 在NSToolbar中添加自定义的toolbaritem
- MAC NSToolbar
- 自定义NSToolbar中NSToolbarItem中的官方例子
- 关于游标的使用
- 关于ViewState的使用
- 关于TreeView 的使用
- 关于SQLDMO的使用
- 关于过滤器的使用
- 关于DTD的使用
- 关于Reflector的使用
- 关于汇编的使用
- 关于yum的使用
- 关于正版软件的使用
- libcurl,CURLOPT_POSTFIELDS的内容变乱码或少一字节
- mysql中文乱码解决方案
- Ubuntu安装git服务器
- Cocos2dx 3.0 过渡篇 (二十) 闲扯强制类型转换
- 美橙互联等空间支持MVC3.0需要更改的DLL引用信息
- 关于NSToolbar的使用
- 感悟自己
- 还是大三的同学最好看下,java工程师必备技能
- win7如何配置环境变量
- 关于https通信
- SendMessage()的消息是否进入消息队列情况
- SSL连接建立过程分析
- 【我来解惑】.Net应该学什么怎么学(一)
- http请求post