6

के साथ ऑब्जेक्ट जोड़ने पर NSTableView पंक्ति संपादन योग्य बनाएं मेरे पास इंटरफ़ेस बिल्डर में NSArrayController तक एनएसटीबल व्यू का एक टेबल कॉलम है। Content Array के लिए सरणी नियंत्रक Shared User Defaults Controller तक बाध्य है। मुझे नई ऑब्जेक्ट्स काम जोड़ने के लिए Handles Content As Compound Value का चयन करना पड़ा। दुर्भाग्यवश, जब मैं add: सरणी पर ऑब्जेक्ट करता हूं तो यह तालिका पंक्ति की हाइलाइटिंग अक्षम करता है। ऑब्जेक्ट जोड़ा गया है लेकिन तालिका पंक्ति को हाइलाइट नहीं किया गया है और आपको डबल-क्लिक करना होगा जहां आपको लगता है कि पंक्ति इसे संपादित करने में सक्षम है।NSArrayController

मेरा लक्ष्य add: सरणी नियंत्रक का उपयोग कर तालिका दृश्य में एक पंक्ति है; फिर, उस पंक्ति को उपयोगकर्ता के लिए स्वचालित रूप से हाइलाइट किया जा सकता है और संपादन योग्य हो सकता है। NSArrayController के लिए

गुण: NSArrayController के लिए

enter image description here

बाइंडिंग: tableview स्तंभ के लिए

enter image description here

बाइंडिंग:

enter image description here

उत्तर

0

मुझे मिली कार्यवाही here मेरे लिए काम किया।

आप NSArrayController उपवर्ग और अपने खुद के जोड़ने लागू करने की आवश्यकता: विधि

// 
// MyArrayController.h 
// 

#import <AppKit/AppKit.h> 

@interface MyArrayController : NSArrayController 

@end 

और

// 
// MyArrayController.m 
// 

#import "MyArrayController.h" 

@implementation MyArrayController 


- (void)add:(id)sender { 
    [super add:sender] ; 

    [self performSelector:@selector(selectLastObject) 
       withObject:nil 
       afterDelay:0.0] ; 
} 

- (void)selectLastObject { 
    if ([self selectsInsertedObjects]) { 
     NSArray* arrangedObjects = [self arrangedObjects] ; 
     NSInteger nObjects = [arrangedObjects count] ; 
     if (nObjects > 0) { 
      [self setSelectionIndex:nObjects-1] ; 
     } 
    } 
} 


@end