MacOS學(xué)習(xí)五:關(guān)閉窗口退出程序與NSAlert

一讳癌,關(guān)閉窗口退出程序

使用過mac的伙伴應(yīng)該知曉一種情況飘痛,mac上的一些應(yīng)用點(diǎn)擊應(yīng)用窗口左上角“x”按鈕也就是關(guān)閉按鈕后汽绢,應(yīng)用并非真正退出,而是處于一種模態(tài)運(yùn)行當(dāng)中卷玉。

由于工作項(xiàng)目的需要哨颂,要求點(diǎn)擊關(guān)閉按鈕,關(guān)閉應(yīng)用窗口的同時關(guān)閉應(yīng)用程序運(yùn)行相种。以下提出兩種方法:

一種很簡單的方法:直接在AppDelegate中添加

- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)sender{

? ? ? ? return YES;

}

BOOL布爾值返回YES表示窗口程序兩者都關(guān)閉威恼,返回NO表示只關(guān)閉窗口;

另一種方法:在窗口window所在的windowController中添加NSWindowDelegate代理方法

在- (void)windowDidLoad 方法中添加代理

self.window.delegate = self;

實(shí)現(xiàn)代理方法

//控制的窗口的關(guān)閉

- (BOOL)windowShouldClose:(id)sender {

exit(0);

return YES;

}

其中BOOL布爾值本身返回值是對當(dāng)前窗口是否關(guān)閉的控制

二,NSAlert使用

NSAlert *alert = [[NSAlert alloc] init];

alert.messageText = @"提示";

[alert setShowsHelp:NO];

alert.informativeText = @"請輸入您的口令";

alert.alertStyle = NSAlertStyleWarning;

[alert addButtonWithTitle:@"確定"];

[alert runModal];

其中messageText是提示的標(biāo)題,informativeText是提示內(nèi)容沙咏,alertStyle是提示的樣式丹锹,runModal則是運(yùn)行alert提示框!

當(dāng)然也可以自定義NSAlert,通過[[[NSAlert window] contentView] addSubview:view]接口來添加子視圖view馏谨,并設(shè)置子視圖的位置和大小别渔,依次來添加自定義內(nèi)容,如表格、文本框之類的視圖哎媚。

如果要自定義NSAlert??下方按鈕樣式喇伯,需要先刪除原先的按鈕,通過[[NSAlert window] contentView]中的子視圖來實(shí)現(xiàn)拨与,判斷子視圖中如果存在NSButton類型稻据,則移除該子視圖。

自定義按鈕向alert視圖的響應(yīng)函數(shù)傳遞消息的方式可以通過[NSApp endSheet: [alert window] returnCode:NSAlertAlternateReturn];這樣類似的語句來完成买喧。

參考博客:blog.csdn.net/freewaywalker/article/details/38275491

個人總結(jié)分享捻悯,謝謝!S倜今缚!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市低淡,隨后出現(xiàn)的幾起案子姓言,更是在濱河造成了極大的恐慌,老刑警劉巖蔗蹋,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件何荚,死亡現(xiàn)場離奇詭異,居然都是意外死亡猪杭,警方通過查閱死者的電腦和手機(jī)兽泣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來胁孙,“玉大人唠倦,你說我怎么就攤上這事′探希” “怎么了稠鼻?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長狂票。 經(jīng)常有香客問我候齿,道長,這世上最難降的妖魔是什么闺属? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任慌盯,我火速辦了婚禮,結(jié)果婚禮上掂器,老公的妹妹穿的比我還像新娘亚皂。我一直安慰自己,他們只是感情好国瓮,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布灭必。 她就那樣靜靜地躺著狞谱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪禁漓。 梳的紋絲不亂的頭發(fā)上跟衅,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天,我揣著相機(jī)與錄音播歼,去河邊找鬼伶跷。 笑死,一個胖子當(dāng)著我的面吹牛秘狞,可吹牛的內(nèi)容都是我干的撩穿。 我是一名探鬼主播,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼谒撼,長吁一口氣:“原來是場噩夢啊……” “哼食寡!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起廓潜,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤抵皱,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后辩蛋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體呻畸,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年悼院,在試婚紗的時候發(fā)現(xiàn)自己被綠了伤为。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡据途,死狀恐怖绞愚,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情颖医,我是刑警寧澤位衩,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站熔萧,受9級特大地震影響糖驴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜佛致,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一贮缕、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧俺榆,春花似錦感昼、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至爹殊,卻和暖如春蜕乡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背梗夸。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工层玲, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人反症。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓辛块,卻偏偏與公主長得像,于是被迫代替她去往敵國和親铅碍。 傳聞我的和親對象是個殘疾皇子润绵,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評論 2 349

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

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件胞谈、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,066評論 4 62
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,791評論 25 707
  • 在不知不覺或者后知后覺中吧 有種墮入深淵的感覺——活的越來越?jīng)]有斗志了. 這還是在跟小超包包吃火鍋的時候小超用的原...
    justericwen閱讀 242評論 0 0
  • 各位小伙伴們大家好尘盼,今天我演講的主題是“學(xué)會表達(dá)”,在演講之前烦绳,想問兩個簡單的問題:1卿捎、你們是否在幾個人前發(fā)言就聲...
    風(fēng)雨135閱讀 267評論 0 0
  • 培訓(xùn) 怎么會這么閑。
    相相相柳閱讀 142評論 0 0