如何解决显示工作表后,工作表中的Mac OS 10.14+ NSTextField将不会以编程方式更新
我有一个使用nswindow:beginsheet:completionhandler:
显示为表格的NSPanel。
显示后,我用setStringValue
更改了NSPanel中的NSTextfield。
这适用于10.12和10.13,但不适用于10.14+,因为在显示工作表后NSTextField无法更改。
有人知道为什么,或者如何在10.14+中解决此问题?在10.14发行说明中找不到任何相关内容。
以下是相关代码:
// Declarations
NSWindow *thisWindow;
IBOutlet NSPanel *progressPanel;
IBOutlet NSTextField *progressText;
// Show the sheet
[thisWindow beginSheet:progressPanel completionHandler:^(NSModalResponse returnCode) {
}];
// Update the NSTextField
- (void) progressSetData: (NSString *) data
{
[progressText setStringValue:data];
progressText.needsDisplay = YES;
[progressPanel display];
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。