Fork me on GitHub

《互联网程序设计》 -- 第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、new file的时候应该在窗体class里声明。

 

本次所有代码链接:https://wws.lanzous.com/idimLgjegyj

posted @ 2020-09-11 21:43  走位,走位  阅读(155)  评论(0编辑  收藏  举报