NSButton常用詳解(修改背景色,添加背景圖片)

Maybe 你和我一樣坤候,剛轉(zhuǎn)入MAC開(kāi)發(fā)白筹,并且需要使用NSButton做一些操作徒河,正常來(lái)講系統(tǒng)的NSButton滿足不了我們的需求顽照,所有我這里就把自己遇到的問(wèn)題及解決方式記錄下來(lái)代兵,或許能幫到你植影。

0涎永、NSButton的基本屬性都可以在XIB中找到羡微,大家可以自己摸索下

1妈倔、NSButton的高度修改启涯,如果你遇到了NSButton的高度被鎖定無(wú)法修改结洼,你可以試試把它的Style修改成Square,或者其他的樣式

2蒸殿、有了高度之后宏所,你就會(huì)想如何去修改它的樣式爬骤,如果僅僅是想修改它的圓角霞玄,變得好看一些坷剧,那很簡(jiǎn)單惫企,跟iOS設(shè)置layer一樣

self.layer.masksToBounds = YES;

self.layer.cornerRadius = 3.0f;

3狞尔、你可能不僅僅要修改它的圓角還有背景顏色和文字顏色沪么,這時(shí)你可以通過(guò)重繪的方式來(lái)解決

- (void)drawRect:(NSRect)dirtyRect {

[super drawRect:dirtyRect];

//背景顏色

[CSRegisterMainColor set];

NSRectFill(dirtyRect);

NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStyle alloc] init];

[paraStyle setParagraphStyle:[NSParagraphStyle defaultParagraphStyle]];

[paraStyle setAlignment:NSTextAlignmentCenter];

//[paraStyle setLineBreakMode:NSLineBreakByTruncatingTail];

NSDictionary *attrButton = [NSDictionary dictionaryWithObjectsAndKeys:[NSFont fontWithName:@"Verdana" size:18], NSFontAttributeName, [NSColor colorWithCalibratedRed:255 green:255 blue:255 alpha:1], NSForegroundColorAttributeName, paraStyle, NSParagraphStyleAttributeName, nil];

NSAttributedString * btnString = [[NSAttributedString alloc] initWithString:@"注冊(cè)" attributes:attrButton];

[btnString drawInRect:NSMakeRect(0, 5, dirtyRect.size.width, dirtyRect.size.height)];

self.layer.masksToBounds = YES;

self.layer.cornerRadius = 3.0f;

}

(備注:重繪時(shí)你可以通過(guò)判斷NSButton的enabled屬性刊殉,來(lái)繪制不同的顏色及文字记焊,當(dāng)你修改NSButton的enabled時(shí)遍膜,系統(tǒng)會(huì)自動(dòng)幫你調(diào)用這個(gè)drawRect方法)

4、如果你不想設(shè)置顏色弛说,或者有一些需求類似于CheckBox木人,但是需要用自己樣式醒第,這時(shí)你就可以使用setImage和setAlternateImage來(lái)設(shè)置你的圖片稠曼,后者是當(dāng)NSButton的state為on時(shí)顯示的圖片。

如果以上的技巧仍然沒(méi)能滿足你蝗岖,你可以留言給我

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子邢享,更是在濱河造成了極大的恐慌骇塘,老刑警劉巖款违,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異力穗,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人救军,你說(shuō)我怎么就攤上這事唱遭。” “怎么了司致?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵霉晕,是天一觀的道長(zhǎng)牺堰。 經(jīng)常有香客問(wèn)我哺眯,道長(zhǎng)奶卓,這世上最難降的妖魔是什么墩邀? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任废膘,我火速辦了婚禮丐黄,結(jié)果婚禮上艰争,老公的妹妹穿的比我還像新娘甩卓。我一直安慰自己,他們只是感情好鹿寻,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布侣诵。 她就那樣靜靜地躺著财搁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪提茁。 梳的紋絲不亂的頭發(fā)上铃岔,一...
    開(kāi)封第一講書(shū)人閱讀 51,754評(píng)論 1 307
  • 那天卖丸,我揣著相機(jī)與錄音坯苹,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛孤钦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播纯丸,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼偏形,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了觉鼻?” 一聲冷哼從身側(cè)響起俊扭,我...
    開(kāi)封第一講書(shū)人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎坠陈,沒(méi)想到半個(gè)月后萨惑,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡仇矾,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年庸蔼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贮匕。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡姐仅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情萍嬉,我是刑警寧澤乌昔,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站壤追,受9級(jí)特大地震影響磕道,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜行冰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一溺蕉、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧悼做,春花似錦疯特、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至朽色,卻和暖如春邻吞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背葫男。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工抱冷, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人梢褐。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓旺遮,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親盈咳。 傳聞我的和親對(duì)象是個(gè)殘疾皇子耿眉,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 在iOS中隨處都可以看到絢麗的動(dòng)畫(huà)效果,實(shí)現(xiàn)這些動(dòng)畫(huà)的過(guò)程并不復(fù)雜鱼响,今天將帶大家一窺iOS動(dòng)畫(huà)全貌跷敬。在這里你可以看...
    F麥子閱讀 5,113評(píng)論 5 13
  • 在iOS中隨處都可以看到絢麗的動(dòng)畫(huà)效果,實(shí)現(xiàn)這些動(dòng)畫(huà)的過(guò)程并不復(fù)雜热押,今天將帶大家一窺ios動(dòng)畫(huà)全貌西傀。在這里你可以看...
    每天刷兩次牙閱讀 8,501評(píng)論 6 30
  • 轉(zhuǎn)載:http://www.reibang.com/p/32fcadd12108 每個(gè)UIView有一個(gè)伙伴稱為l...
    F麥子閱讀 6,216評(píng)論 0 13
  • 轉(zhuǎn)自:http://www.code4app.com/blog-866962-1317.html1、設(shè)置UILab...
    MMOTE閱讀 1,620評(píng)論 1 1
  • 很多時(shí)候桶癣,我們?cè)O(shè)立了一個(gè)目標(biāo)拥褂,確往往難以達(dá)成,事后回想起來(lái)牙寞,會(huì)解釋說(shuō):是有人找我聊另外的事饺鹃,又或者說(shuō)當(dāng)時(shí)做到一半沒(méi)...
    碎炎星痕閱讀 162評(píng)論 0 0