浮空若梦 2015-06-07 11:02 采纳率: 0%
浏览 1746

求大神回答 java的swing题目

1.创建项目Lab37,添加类MainFrame,继承自JFrame,实现ActionListener接口。
2.添加以下成员属性
a)JTree类型的treeDir
b)String类型的dirName
c)JSplitPane类型的sp
d)JTable类型的fileInfo
3.构造方法
a)设置标题为“文件信息查看器”
b)创建工具栏,并添加一个“打开”按钮。注册按钮事件监听对象为this
c)构造一个只有一个节点,显示“未选择目录”的树,引用到treeDir
d)将treeDir加入到sp的左侧
e)将fileInfo设置为一个表头显示"文件名","文件大小"。只有一行数据"未选择文件","0"的表。
f)将fileInfo加入到sp的右侧
g)将工具栏放置在窗体的North方位,sp放置在Center。设置窗体大小为600*480,可见。
4.添加一个方法makeTree,没有返回值,参数String rName, String[] nName。方法逻辑如下:
a)以rName为内容定义一个节点作为根节点root。
b)定义一个DefaultMutableTreeNode数组nodes,数组的个数为nName数组元素的数目。
c)利用循环,将nName数组的每一个内容构建一个节点,并复制到nodes数组的元素。将当前这个nodes的节点添加到root的子节点。
d)创建根为root的树引用到treeDir。
e)将treeDir放入JScrollPane容器再添加到sp的左侧。sp.setLeftComponent(new JScrollPane(treeDir));
5.添加一个方法makeTable,没有返回值,参数File[] nFile
a)如果nFile的内容为空,则返回。
b)定义DefaultTableModel对象dtm,获取fileInfo对象的模型。
c)清除原有数据行。
d)定义字符串数组title,内容为"文件名","文件大小"。将title设置为表头作为表头。dtm.setColumnIdentifiers(title);
e)定义一个2元素的String数组data,循环遍历nFile,将每个元素的文件名赋值到data[0],文件大小赋值到data[1]。将data添加为表格的一行。dtm.addRow(data);
6.添加一个方法openFile,没有返回值,不需要参数。方法处理逻辑如下
a)定义一个JFileChooser对象fileChooser。
b)调用fileChooser的setFileSelectionMode方法,参数JFileChooser.DIRECTORIES_ONLY。使得只能选择目录。
c)打开文件对话框,定义临时int变量rVal记录返回值。
d)如果是按“确定”返回,则将用户选择的目录路径赋值到dirName。根据dirName构建文件对象,调用makeTree方法和makeTable方法。
7.实现actionPerformed方法
a)判断事件源是否为按钮。
b)如果是按钮事件,则调用openFile方法
8.主方法
a)构造MainFrame对象。
具体图片如下![![![图片说明](https://img-ask.csdn.net/upload/201506/07/1433674821_106203.png)图片说明](https://img-ask.csdn.net/upload/201506/07/1433674815_5161.png)图片说明](https://img-ask.csdn.net/upload/201506/07/1433674859_111744.png)图片说明

  • 写回答

6条回答 默认 最新

  • JonsonJiao 2015-06-07 12:10
    关注

    你想问什么问题?把你的代码放上来。

    评论

报告相同问题?

悬赏问题

  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)