بعد تحميل بنك الاستثمار القومي مع NSViewController.... كيف يمكنني الوصول إلى NSButton في بنك الاستثمار القومي?
-
05-07-2019 - |
سؤال
لقد ثم subclassed NSViewController مع IBOutlets مدمن مخدرات إلى NSButton في الثانوية بنك الاستثمار القومي.
لا يمكن إنشاء مثيل NSViewController وتطبيق رأي في NSMenu -- يعمل كبيرة -- ولكن كيف يمكنني الوصول إلى زر تغيير العنوان ؟
منذ NSViewController وقد IBOutlets افترضت أنني أفعل هذا من خلال وحدة تحكم.
//this part works great
NSViewController *viewController = [[toDoViewController alloc] initWithNibName:@"toDoView" bundle:nil];
NSView *newView = [viewController view];
newMenuItem.view = newView;
//this part not so much
[viewController [toDoButton setTitle:someStringHere]];
أي مؤشرات على إلى أين نذهب من هنا ؟
تحرير لإضافة:على toDoViewController فئة --
@interface toDoViewController : NSViewController {
IBOutlet NSButton *checkBoxButton;
IBOutlet NSButton *toDoButton;
}
@end
المحلول
[viewController [toDoButton setTitle:someStringHere]];
كما الخيال التفاعلية المترجمين يقول "يبدو أن عداد المفقودين الفعل."
لديك جهاز استقبال (viewController
) ، و الرسالة كاملة-التعبير ([toDoButton setTitle:…]
), و بين قوسين ، ولكن كنت في عداد المفقودين محدد.على هذا النحو, هذا ليس صحيحا الرسالة-التعبير.
هناك احتمالان:
- يعني لك أن ترسل رسالة إلى عرض وحدة تحكم ، ويمر نتيجة
setTitle:
كما حجتها و نسيت محدد.أجد أن هذا وارد ، لأن NSButton هوsetTitle:
لا يعود أي شيء. - كنت أقصد أن تحصل زر من تحكم عرض ، ثم ترسل زر
setTitle:
رسالة.على افتراض أن هذا الرأي تحكم مثيل من فئة فرعية من NSViewController التي كنت قد أضفتtoDoButton
الملكية استخدم[[viewController toDoButton] setTitle:someStringHere]
أو[viewController.toDoButton setTitle:someStringHere]
.
لا تنتمي إلى StackOverflow