مربع الاختيار على عمود الجدول لن يسجل انقر فوق
-
22-09-2019 - |
سؤال
لدي طريقة عرض جدول أضف إليها الأعمدة ديناميكيًا. يجب أن يتم ذلك بهذه الطريقة لأنه لا يمكنني التنبؤ بعدد الأعمدة التي سأحتاجها.
بعض الأعمدة مربعات الاختيار لكن لا يمكنني النقر عليها عندما أقوم بتشغيل طلبي. يتم تعيين العمود ومربع الاختيار لتكون قابلة للتحرير ولكن إذا قمت بالنقر فوق مربع الاختيار ، فلن يتم تعيين الشيك. هل فاتني شيء؟
تحديث
كيف أحاول (أحاول) ضبط الحالة على خانة الاختيار:
- (void)tableView:(NSTableView *)theTableView
setObjectValue:(id)theObject
forTableColumn:(NSTableColumn *)theColumn
row:(int)rowIndex
{
if (theTableView == resultsTableView) {
if ([[theColumn identifier] isEqualToString:CHCheckBoxColumnIdentifier]) {
NSInteger state = [[theColumn dataCell] state];
if (state == NSOnState) {
[[theColumn dataCell] setState:NSOffState];
} else {
[[theColumn dataCell] setState:NSOnState];
}
/*
NSLog(@"%@", theObject);
NSLog(@"%@", theColumn);
NSLog(@"%i", rowIndex);
*/
}
}
}
المحلول
هل الأعمدة الخاصة بك مرتبطة بوحدة تحكم أم أنك تستخدم بروتوكول NSTAPTEDATASOURCE؟ أظن أن الأخير ولكنك ستحتاج إلى تحديد.
الذهاب إلى افتراضي: يتم التعامل مع نقرة على مربع الاختيار بنفس طريقة أي شيء آخر في -tableView:setObjectValue:forTableColumn:row:
طريقة. سيكون هدفك هو حالة الزر ...
لا تنتمي إلى StackOverflow