检查的NSTextField为空或不OSX迅速
问题描述:
我用一个代码来设置,当用户不输入查询将值的NSTextField值,它不会否则以后继续,如果在文本字段值检查的NSTextField为空或不OSX迅速
这里是一个exampel。
func calculateAmountPanels(){
let fpanelsHigh = Float(panelsHigh)
let fpanelsWidth = Float(panelsWidth)
if panelsHighTextField != nil && panelsWideTextField != nil {
resHightLabel.stringValue = "N/A"
resWidthLabel.stringValue = "N/A"
lblScreenHight.stringValue = "N/A"
lblScreenWidth.stringValue = "N/A"
lblScreenArea.stringValue = "N/A"
lblAmountPanels.stringValue = "N/A"
}
else {
ammountPanels = (fpanelsWidth! * fpanelsHigh!)
printText()
}
}
一些建议将不胜感激,因为OSX编码似乎不同于ios。
答
你必须检查的的NSTextField的stringValue的,如:
panelsHighTextField.stringValue != nil
正如提到的,你也应该测试panelsHighTextField.stringValue.characters.count
高于0
+2
你当然也想测试一个空字符串。 – HAS
答
我想补充一点延伸:
extension NSTextField {
func setStringValueIfEmpty(newValue: String) {
if self.stringValue == nil || self.stringValue.isEmpty {
self.stringValue = newValue;
}
}
}
并在域上调用它,如下所示:
resHightLabel.setStringValueIfEmpty("N/A")
你甚至在问什么? – Alexander
我想检查文本字段是否为空,如果是这样,请在不同的标签中返回“N/A”。 – lightmaster2006