Macos NSDatePicker在计时器上提交子字段更改
我正在使用带有Macos NSDatePicker在计时器上提交子字段更改,macos,cocoa,nsdatepicker,Macos,Cocoa,Nsdatepicker,我正在使用带有NSYearMonthDayDatePickerElementFlag的普通NSDatePicker控件。它与“日期和时间设置”面板上的日期选择器相同,具有MM/DD/YYYY字段(包含3个子字段的文本框,而不是日历部分)。我的用户在年份子字段中键入数字时陷入了困境(尽管在月份和日期字段中也存在这种行为) 您可以使用“日期和时间设置”面板重现该问题。取消选中“自动设置日期和时间”,然后单击字段的当前年份部分,即2014年。现在只需键入19并暂停。大约1秒后,它触发一些事件,并将日期
NSYearMonthDayDatePickerElementFlag
的普通NSDatePicker
控件。它与“日期和时间设置”面板上的日期选择器相同,具有MM/DD/YYYY
字段(包含3个子字段的文本框,而不是日历部分)。我的用户在年份子字段中键入数字时陷入了困境(尽管在月份和日期字段中也存在这种行为)
您可以使用“日期和时间设置”面板重现该问题。取消选中“自动设置日期和时间”,然后单击字段的当前年份部分,即2014年。现在只需键入19并暂停。大约1秒后,它触发一些事件,并将日期更改为1969年
我的用户似乎没有NSDatePicker
所期望的输入速度快。一些事件触发,调用一些内部函数NSDatePickerCell(NSTextFieldWithStepperDatePickerInternal)\u userEditExpired:
,远远早于我的许多用户完成4位数年份的输入。每次击键后,超时都会重置,并且似乎只需一秒钟或更短的时间
有没有人知道有什么方法可以不用写一个全新的约会挑拣者就能打败这种行为?我很乐意把超时时间改长一些,大概5秒左右,因此,速度较慢的打字员可以在不触发事件的情况下输入所有4位数字,并在完成之前接受他们的输入。5年后:我在XCode 10.1中遇到了与
NSDatePicker
完全相同的问题。问题仍然存在。也在寻找解决方案。