1. 程式人生 > 實用技巧 >《網際網路程式設計》 -- 第1周設計對話方塊傳送訊息

《網際網路程式設計》 -- 第1周設計對話方塊傳送訊息

一、窗體的構建

1、新建專案,並新建一個包命名隨意,建議有格式的好,在建好的包下面建立一個class,並選擇JavaFXApplication;

2、先聯想好窗體需要怎麼構建,可用佈局之一,使用borderpane作為主pane,隨後用VBox作為文字框的佈局,Hbox作為按鈕的佈局。完成此設想後可以開始著手細節;

3、按鈕的設定,有四個按鈕,可以定義為成員變數方便使用。文字框也類似。

4、後面就設定好文字框和按鈕的功能,程式碼如下:

 1 taDisplay.setEditable(false);//設定顯示的文字框是隻讀的,不可寫入的
 2 taDisplay.setWrapText(true
);//自動換行 3 //按鈕事件的設定 4 btnExit.setOnAction(event -> {System.exit(0);}); 5 btnSend.setOnAction(event -> { 6 String msg = tfSend.getText(); 7 taDisplay.appendText(msg + "\n"); 8 tfSend.clear(); 9 }); 10 11 // btnSend.requestFocus();
12 tfSend.requestFocus();//聚焦一定是在傳送框,因為輸入資訊後焦點就在傳送框,而不是按鈕或其他 13 tfSend.setOnKeyPressed(event -> { 14 15 if(event.isShiftDown() == true && event.getCode().equals(KeyCode.ENTER )){ 16 String msg = tfSend.getText(); 17 taDisplay.appendText("echo:" + msg + "\n");
18 tfSend.clear(); 19 } 20 else if (event.getCode().equals(KeyCode.ENTER)) { 21 String msg = tfSend.getText(); 22 taDisplay.appendText(msg + "\n"); 23 tfSend.clear(); 24 } 25 });
按鈕和文字框的功能

二、文字的輸入輸出

1、新增一個檔案操作類TextFileIO,負責檔案操作的相關功能,至少實現append方法和load方法用於儲存和讀取檔案;

2、在SimpleFX類中的合適位置將TextFileIO類例項化為textFileIO,在“儲存”按鈕的響應事件程式碼中新增相應功能。

3、檔案裡有參考程式碼,不贅述了。

三、注意事項

1、實現shiif+enter鍵傳送訊息,應用isSHIIFDOWN()方法。

2、newfile的時候應該在窗體class裡明