2009-09-10 36 views
15

我需要在Cocoa中以編程方式創建複選框,當我嘗試使ButtonType設置爲NSSwitchButton的按鈕時,它會顯示我給它的標題,但不顯示覆選框。我想我錯過了一些東西,但是我找不到任何有關使用複選框而不使用Xcode GUI的資源。任何人都可以鏈接一個好資源請。另外,我不認爲發佈我的代碼會很有用,因爲它全部包裝在自定義lisp API中。使用Cocoa以編程方式創建複選框

回答

3

我不認爲按鈕默認情況下以編程方式創建。檢查setBezelStyle:方法,以及setBezeled:setBordered:。其中一個應該給你你想要的。

1

我沒有正確執行setImagePosition,這導致複選框不顯示。

34

這個問題有點老了,所以你可能已經弄清楚了,但是我在找到這個確切的東西的時候發現了它。亞歷克斯在解決方案中跳舞,卻沒有真正提供。因此,在這裏,對於Google和所有人類:如何以編程方式在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]; 
相關問題