Label,Text Field和Combo Box来处理文本
2015-11-16 22:46
453 查看
一.使用Text Field
text field可以接受字符串和数字,可以通过下面的属性来获取值:
intValue:如果是字符串,则为0,如果浮点数,则去掉小数部分
floatValue或doubleValue:如果是字符串,则为0.0
stringValue:
除了标准的text field,Xcode也提供其它几种:
Text Field with Number Formatter
Secure Text Field
Search Field
Token Field
二.使用Combo Box
一个combo box基于NSComboBox类,可以展示一系列选项,并且允许用户进行输入。有两种方式来填充它的pop-up选项列表:使用属性检查面板或者外部的数据源(data source)
1.使用属性检查面板
代码如下:
AppDelegate.swift文件
2.外部的数据源(data source)
当combo box需要展示会改变的数据时,数据源是最好的,你需要实现NSComboBoxDataSource协议:
示例代码为:
AppDelegate.swift文件
效果如图:
text field可以接受字符串和数字,可以通过下面的属性来获取值:
intValue:如果是字符串,则为0,如果浮点数,则去掉小数部分
floatValue或doubleValue:如果是字符串,则为0.0
stringValue:
除了标准的text field,Xcode也提供其它几种:
Text Field with Number Formatter
Secure Text Field
Search Field
Token Field
二.使用Combo Box
一个combo box基于NSComboBox类,可以展示一系列选项,并且允许用户进行输入。有两种方式来填充它的pop-up选项列表:使用属性检查面板或者外部的数据源(data source)
1.使用属性检查面板
代码如下:
AppDelegate.swift文件
import Cocoa @NSApplicationMain class AppDelegate: NSObject, NSApplicationDelegate { @IBOutlet weak var window: NSWindow! @IBOutlet weak var myCombo: NSComboBox! @IBOutlet weak var comboResult: NSTextField! func applicationDidFinishLaunching(aNotification: NSNotification) { } func applicationWillTerminate(aNotification: NSNotification) { } @IBAction func showResult(sender: AnyObject) { comboResult.stringValue=myCombo.stringValue } }
2.外部的数据源(data source)
当combo box需要展示会改变的数据时,数据源是最好的,你需要实现NSComboBoxDataSource协议:
示例代码为:
AppDelegate.swift文件
import Cocoa @NSApplicationMain class AppDelegate: NSObject, NSApplicationDelegate,NSComboBoxDataSource { @IBOutlet weak var window: NSWindow! @IBOutlet weak var myCombo: NSComboBox! @IBOutlet weak var comboResult: NSTextField! let myArray=["中国","美国","俄罗斯","德国"] func applicationDidFinishLaunching(aNotification: NSNotification) { myCombo.usesDataSource=true myCombo.dataSource=self numberOfItemsInComboBox(myCombo) comboBox(myCombo, objectValueForItemAtIndex: 0) } func numberOfItemsInComboBox(aComboBox: NSComboBox) -> Int { return myArray.count } func comboBox(aComboBox: NSComboBox, objectValueForItemAtIndex index: Int) -> AnyObject { return myArray[index] } func applicationWillTerminate(aNotification: NSNotification) { } @IBAction func showResult(sender: AnyObject) { comboResult.stringValue=myCombo.stringValue } }
效果如图:
相关文章推荐
- autoconf & automake
- ARToolKit 的simpleLite程序分析
- 随机森林
- DP-Triangle
- 飞机大战
- Java锁的种类以及辨析(三):阻塞锁
- 第十二周 11.16---11.22
- 2015区域赛总结
- Android_自定义水波纹菜单弹出效果
- NoClassDefFoundError 集合
- Java锁的种类以及辨析(二):自旋锁的其他种类
- App在iOS9上不能分享至微信,提示微信没有安装
- 井字棋的最优策略竟是先占角!
- 1008. 数组元素循环右移问题 (20)
- 单机运行spark-shell出现ERROR Remoting: Remoting error: [Startup failed]
- Java笔记之数组
- FullPage.js全屏滚动插件学习总结
- 01.MyBatis入门
- Java用ArrayList实现队列
- iOS小技巧-第三方sdk官网汇总(逐步积累)