1 00:00:00,000 --> 00:00:00,270 2 00:00:00,270 --> 00:00:03,170 >> 揚聲器1:讓我們寫了一個程序 圖形用戶界面,以及 3 00:00:03,170 --> 00:00:07,240 一個文本字段,允許用戶 輸入一些字符串,然後按Enter鍵,在 4 00:00:07,240 --> 00:00:09,920 而此時該字符串是 提供給我的程序。 5 00:00:09,920 --> 00:00:13,360 很像的GetString的CS50圖書館 工作,但此時用 6 00:00:13,360 --> 00:00:14,880 圖形用戶界面。 7 00:00:14,880 --> 00:00:16,180 讓我們開始吧。 8 00:00:16,180 --> 00:00:19,810 >> 我已經寫了一些骨架代碼, 所以現在讓我們填寫的空白。 9 00:00:19,810 --> 00:00:22,770 GTextField,稱這是場。 10 00:00:22,770 --> 00:00:25,790 分配給它的返回值 的newGTextField。 11 00:00:25,790 --> 00:00:28,790 並指定我倒要看看 從用戶10個字符 12 00:00:28,790 --> 00:00:30,440 畫面的時間。 13 00:00:30,440 --> 00:00:35,720 >> 讓我們下一次調用的setActionCommand, 在傳遞現場,傳遞中說, 14 00:00:35,720 --> 00:00:39,330 報價解除引用“輸入”。換句話說, 讓我們聯想到這個文本字段 15 00:00:39,330 --> 00:00:43,620 唯一的字符串“輸入”。以防萬一我 用戶界面有多個文本 16 00:00:43,620 --> 00:00:47,260 域,這個字符串將唯一 確定這一點。 17 00:00:47,260 --> 00:00:53,000 >> 讓我們下一次調用addToRegion,傳遞 窗口,在傳遞現場,傳遞 18 00:00:53,000 --> 00:00:56,780 在報價引文結束“南”的獨特 在斯坦福定義的標識符 19 00:00:56,780 --> 00:00:59,680 便攜圖書館,指定 南部或底部 20 00:00:59,680 --> 00:01:01,560 我的用戶界面的區域。 21 00:01:01,560 --> 00:01:05,230 >> 讓我們接下來的誘發無限循環。 22 00:01:05,230 --> 00:01:07,870 而這個循環中,讓我們 偵聽兩個事件。 23 00:01:07,870 --> 00:01:09,910 一,關閉窗口的用戶。 24 00:01:09,910 --> 00:01:13,060 或二,用戶鍵入的東西 到該文本字段。 25 00:01:13,060 --> 00:01:15,600 讓我們來聲明一個gActionEvent。 26 00:01:15,600 --> 00:01:16,770 調用它的事件。 27 00:01:16,770 --> 00:01:19,700 分配給它的回報 waitForEvent的價值。 28 00:01:19,700 --> 00:01:24,720 指定事件的類型,我們會 喜歡聽的是一個ACTION_EVENT, 29 00:01:24,720 --> 00:01:28,470 其中ACTION_EVENT是一個常數 在斯坦福便攜式聲明 30 00:01:28,470 --> 00:01:31,180 圖書館,指定 這種類型的事件。 31 00:01:31,180 --> 00:01:37,600 >> 讓我們接下來的檢查,如果,getEventType, 傳遞事件,等於等於 32 00:01:37,600 --> 00:01:42,110 WINDOW_CLOSED,另一個常量聲明 在斯坦福大學的便攜式 33 00:01:42,110 --> 00:01:45,090 庫,它表明 該窗口已經關閉。 34 00:01:45,090 --> 00:01:48,450 接下來就讓我們簡單地打出來 這個無限循環。 35 00:01:48,450 --> 00:01:51,600 >> 否則,現在讓我們檢查是否 用戶鍵入的東西成 36 00:01:51,600 --> 00:01:52,910 文本字段。 37 00:01:52,910 --> 00:02:00,950 如果字符串比較,getActionCommand, 傳遞事件,逗號報價引文結束 38 00:02:00,950 --> 00:02:03,510 “輸入”等於等於0。 39 00:02:03,510 --> 00:02:07,340 換句話說,如果所述唯一標識符 文本字段成 40 00:02:07,340 --> 00:02:10,680 用戶鍵入的東西是平等的 該唯一標識符,我 41 00:02:10,680 --> 00:02:13,000 指定較早,讓我們 做到以下幾點。 42 00:02:13,000 --> 00:02:18,970 >> printf的報價引文結束“%s的輸入了。” 並讓我們插件為 43 00:02:18,970 --> 00:02:24,950 %s的的getText通過的返回值 在該領域,其中的getText是另一 44 00:02:24,950 --> 00:02:28,350 功能,在斯坦福大學的定義 便攜圖書館,那得到的文本 45 00:02:28,350 --> 00:02:29,430 從一個字段。 46 00:02:29,430 --> 00:02:32,210 >> 現在,讓我們保存,編譯, 並運行此程序。 47 00:02:32,210 --> 00:02:33,730 讓文字。 48 00:02:33,730 --> 00:02:35,630 /文本。 49 00:02:35,630 --> 00:02:38,780 還有我的用戶界面,並有 在底部的文本字段。 50 00:02:38,780 --> 00:02:42,310 讓我們輸入類似 H-E-L-L-O,回車。 51 00:02:42,310 --> 00:02:45,280 而且,在底部的我的 控制台窗口中,我們確實看到 52 00:02:45,280 --> 00:02:46,530 說“你好”被輸入。 53 00:02:46,530 --> 00:02:48,790