2009-09-10 36 views
15

Tôi cần tạo hộp kiểm lập trình trong Cocoa và khi tôi thử và tạo nút có ButtonType được đặt thành NSSwitchButton, hộp này sẽ hiển thị tiêu đề tôi đã đặt nhưng không hiển thị hộp kiểm. Tôi nghĩ rằng tôi đang thiếu một cái gì đó nhưng tôi không thể tìm thấy bất kỳ nguồn lực về làm những thứ như hộp kiểm mà không cần sử dụng GUI Xcode. Bất cứ ai có thể liên kết một nguồn lực tốt xin vui lòng. Ngoài ra, tôi không nghĩ rằng việc đăng mã của tôi sẽ hữu ích vì nó được bao bọc trong một API tùy chỉnh lisp.Tạo hộp kiểm theo cách lập trình bằng Cocoa

Trả lời

3

Tôi không nghĩ rằng các nút được gắn theo mặc định khi được tạo theo chương trình. Kiểm tra phương pháp setBezelStyle:, cũng như setBezeled:setBordered:. Một trong số đó sẽ cung cấp cho bạn những gì bạn muốn.

1

Tôi đã không thực thi setImagePosition đúng cách và điều này đã khiến hộp kiểm không hiển thị.

34

Câu hỏi này hơi cũ nên bạn có thể đã tìm ra, nhưng tôi đã tìm thấy nó trong khi tìm kiếm chính xác điều này. Alex nhảy xung quanh giải pháp mà không thực sự cung cấp nó. Vì vậy, ở đây, đối với Google và tất cả nhân loại: làm thế nào để lập trình tạo một hộp kiểm trong Cocoa.

NSRect frame; 
frame.size.width = frame.size.height = 18; 
NSButton *myCheckBox = [[NSButton alloc] initWithFrame:frame]; 
[myCheckBox setButtonType:NSSwitchButton]; 
[myCheckBox setBezelStyle:0]; // This is unnecessary. I include it to show that checkboxes don't have a bezel style. 

[myView addSubview:myCheckBox]; 
Các vấn đề liên quan