Tôi có một NIB chứa hai cửa sổ, một là cửa sổ chính của ứng dụng hiển thị khi khởi chạy và cửa sổ kia là một trang tùy chỉnh (và do đó không hiển thị khi khởi chạy). Khi tờ được yêu cầu cuộc gọi điều khiển của tôi:Tại sao trang tính của tôi không được đính kèm vào cửa sổ mà nó chạy?
[NSApp beginSheet: sheetWindow modalForWindow: mainWindow modalDelegate: self didEndSelector: @selector(didEndSheet:returnCode:contextInfo:) contextInfo: nil];
hiển thị cửa sổ tờ và bắt đầu một phiên modal, nhưng cửa sổ có thanh tiêu đề chuẩn Aqua, không 'kết nối' để cửa sổ chính và có thể được di chuyển xung quanh giống như một cửa sổ thông thường. Không cần phải nói, đây không phải là mong muốn :-). Tại sao cửa sổ trang tính "không xuất hiện" của cửa sổ nó chạy, vì trang tính thường làm khi bắt đầu trong thời trang này?
Tôi đã tự hỏi liệu thực tế là tôi đã bắt đầu trang tính bên trong bộ điều khiển -awakeFromNib
có thể có tác dụng hay không, vì vậy tôi đã di chuyển trang tính đến hành động của nút mà tôi có thể kích hoạt sau. Điều này đã không thay đổi hành vi. Tôi đã không nghĩ về bất cứ điều gì khác để thử. Tôi đang nhắm mục tiêu 10.5 SDK, sử dụng Xcode 3.1.
Chỉnh sửa: vì vậy có vẻ như tôi đã tạo một hộp thoại phương thức; các trang tính và hộp thoại ứng dụng phương thức đều được bắt đầu bằng phương thức -beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:
. Nhưng làm thế nào để tôi chỉ ra rằng cửa sổ của tôi phải là một trang tính và không phải là một hộp thoại phương thức?
Kiểm tra mainWindow không phải là không. –
Tôi không thể thấy bất cứ điều gì sai về nó, có thể một số bối cảnh có thể giúp đỡ. –
Bạn nên làm cho câu trả lời đó, Nathan. Nó gần như chắc chắn đúng. – Chuck