Tôi đang chuyển từ iOS sang Cocoa và cố gắng lén lút qua một vài chương trình đầu tiên của mình. Tôi nghĩ sẽ đơn giản hơn khi thêm một số NSComboBox
vào mẫu của tôi, phần đó là tốt. Tôi thêm <NSComboBoxDelegate, NSComboBoxDataSource>
để giao diện của tôi, hai callbacks dữ liệu, và các notifier:Lập trình Cacao, hãy thiết lập đại biểu
@interface spcAppDelegate : NSObject <NSApplicationDelegate,
NSComboBoxDelegate, NSComboBoxDataSource>
- (id)comboBox:(NSComboBox *)aComboBox objectValueForItemAtIndex:(NSInteger)index;
- (NSInteger)numberOfItemsInComboBox:(NSComboBox *)aComboBox;
- (void)comboBoxSelectionDidChange:(NSNotification *)notification;
@end
để kiểm soát kéo combobox để các đại biểu ứng dụng (đó là lớp duy nhất trong ứng dụng mặc định đơn giản của tôi) và có dây lên các đại biểu và dữ liệu nguồn nhưng không ai trong số những sự kiện đó cháy. Tôi nghĩ rằng đại biểu ứng dụng là chính xác nhưng kể từ khi nó không cháy, tôi cũng đã cố gắng "chủ sở hữu tập tin" và "ứng dụng". Tôi không nghĩ rằng những người sẽ làm việc và họ đã không.
Làm cách nào đúng để kết nối nguồn đại biểu/nguồn dữ liệu cho một số NSComboBox
trong ứng dụng Cocoa?
Cảm ơn!
Khi bạn nói "nó không chớp," là những gì bạn làm gì để kiểm tra điều đó? Breakpoint trong trình gỡ rối? NSLog? – user1118321
Bởi "không cháy" Tôi có nghĩa là tôi đã thêm các phương thức đại biểu và thiết lập một điểm ngắt trong chúng mà không đạt được. Bạn có thể nghĩ rằng nó có ý nghĩa rằng hai phương pháp dữ liệu không đạt được nhưng comboBoxSelectionDidChange nên có thể truy cập được. Một lần nữa lỗi của tôi khi tôi đã kết nối sự kiện đó không chính xác. Vì vậy, tôi thực sự đã có hai propblems nhưng sửa chữa chính đã nhận ra rằng có một (mới?) Hộp kiểm để chỉ ra rằng tôi đã sử dụng một nguồn dữ liệu. Cảm ơn :) – simusid