《Java程序设计》第16周周四:GUI编程及文件对话框的使用
项目一:文件及选择
(Java Swing提供的文件选择对话框)”,了解博文大意。
api XXX ”,如“site:apihome.cn java api JTextField”
api JTextField”
4. 为什么须要“敲”代码?见博文 to全部BBS的同学:如何才是学习的好方法?转《笨方法学Python》。笨方法更简单。
package com.liang;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class FileChooser extends JFrame implements ActionListener{
JButton open=null;
JTextField jtfPath = null; public static void main(String[] args) {
new FileChooser();
}
public FileChooser(){
this.setLayout(new FlowLayout());
// JLabel picture = new JLabel("pictureURL");
// add( picture);
// button初始化
open=new JButton("open");
// 加入监听
open.addActionListener(this);
// 把button加入到JFrame容器中
this.add(open); // 加入文本框控件
jtfPath = new JTextField("选择的文件",40);
jtfPath.setEditable(false); // 不可编辑
jtfPath.setHorizontalAlignment(JTextField.CENTER); // 居中
this.add(jtfPath); // 设置JFrame的大小,可显示。默认关闭button
this.setBounds(400, 200, 700, 500);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
JFileChooser jfc=new JFileChooser();
jfc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES );
jfc.showDialog(new JLabel(), "选择");
File file=jfc.getSelectedFile(); if(file.isDirectory()){
System.out.println("目录:"+file.getAbsolutePath()); }else if(file.isFile()){
System.out.println("文件:"+file.getAbsolutePath());
}
System.out.println(jfc.getSelectedFile().getName()); // 把文件路径显示在文本框中
jtfPath.setText(file.getAbsolutePath());
}
}
《Java程序设计》第16周周四:GUI编程及文件对话框的使用的更多相关文章
- Java程序设计 第16周 课堂实践 —— 数据库4
		
Java程序设计 第16周 课堂实践 -- 数据库4 课堂实践任务4 查询world数据库,查询哪个国家的平均寿命最长. 代码分析 实现查询数据库需要我们修改Message.java,MessageD ...
 - Java程序设计 第16周 课堂实践 —— 数据库3
		
Java程序设计 第16周 课堂实践 -- 数据库3 课堂实践任务3 查询world数据库,获得New Jessey州所有城市的总人口数. 代码分析 实现查询数据库需要我们修改MessageDAO.j ...
 - Java程序设计 第16周 课堂实践
		
Java程序设计 第16周 课堂实践 -- 数据库2 课堂实践任务2 查询world数据库,获得人口超过500万的所有城市的列表. 代码分析 实现查询数据库需要我们修改Message.java,Mes ...
 - GUI编程及文件对话框的使用
		
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import ...
 - 2018面向对象程序设计(Java)第16周学习指导及要求
		
2018面向对象程序设计(Java)第16周学习指导及要求(2018.12.13-2018.12.16) 学习目标 (1) 掌握线程概念: (2) 掌握线程创建的两种技术: (3) 理解和掌握线程 ...
 - 2019面向对象程序设计(Java) 第16周学习指导及要求
		
2019面向对象程序设计(Java)第16周学习指导及要求 (2019.12.13-2019.12.16) 学习目标 (1) 掌握Java应用程序的打包操作: (2) 掌握线程概念: (3) 掌握线程 ...
 - 20175227张雪莹 2018-2019-2 《Java程序设计》第九周学习总结
		
20175227张雪莹 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十一章 JDBC数据库操作 MySQL数据库管理系统 下载安装MySQL 若下载的是 ...
 - 20165235 祁瑛 2018-4 《Java程序设计》第九周学习总结
		
20165235 祁瑛 2018-4 <Java程序设计>第九周学习总结 教材学习内容总结 URL类 UR类是java.net包中的一个重要类,使用URL创建的对象的应用程序称作称作客户端 ...
 - 20175314 《Java程序设计》第二周学习总结
		
20175314 <Java程序设计>第二周学习总结 教材学习内容总结 我在APPstore上发现了一个可以支持我们在IOS系统上学习实践Java程序的开发环境,只需要购买专业版就可以使用 ...
 
随机推荐
- [POI2015]Trzy wieże
			
[POI2015]Trzy wieże 题目大意: 给定一个长度为\(n(n\le10^6)\)的仅包含'B'.'C'.'S'三种字符的字符串,请找到最长的一段连续子串,使得在这一段内出现过的所有字符 ...
 - 【洛谷】2474:[SCOI2008]天平【差分约束系统】
			
P2474 [SCOI2008]天平 题目背景 2008四川NOI省选 题目描述 你有n个砝码,均为1克,2克或者3克.你并不清楚每个砝码的重量,但你知道其中一些砝码重量的大小关系.你把其中两个砝码A ...
 - 【洛谷】4304:[TJOI2013]攻击装置【最大点独立集】【二分图】2172: [国家集训队]部落战争【二分图/网络流】【最小路径覆盖】
			
P4304 [TJOI2013]攻击装置 题目描述 给定一个01矩阵,其中你可以在0的位置放置攻击装置. 每一个攻击装置(x,y)都可以按照“日”字攻击其周围的8个位置(x-1,y-2),(x-2,y ...
 - Codeforces Round #283 (Div. 2) A. Minimum Difficulty 暴力水题
			
A. Minimum Difficulty time limit per test 2 seconds memory limit per test 256 megabytes input standa ...
 - PUSH MESSAGE 云控等交互类测试业务的自动化
			
针对的业务: 1. PUSH消息,即由云端服务向客户端推送消息 2. MESSAG消息,即用户间消息.用户群消息和聊天室消息 上干货,框架见下图:
 - spring---transaction(2)---源代码分析(事务的定义TransactionDefinition)
			
写在前面 事务属性通过TransactionDefinition接口实现定义,主要有事务隔离级别.事务传播行为.事务超时时间.事务是否只读. public interface TransactionD ...
 - cloc 统计代码行数工具
			
cloc 统计代码行数工具 官网地址:http://cloc.sourceforge.net/ 下载完成后 会生成一个.exe文件 需要修改文件名为 cloc.exe 然后把这个文件拷贝到需要统计的根 ...
 - MySQL的转义符 ` 作用
			
` 是 MySQL 的转义符,避免和 mysql 的本身的关键字冲突,只要你不在列名.表名中使用 mysql 的保留字或中文,就不需要转义. 所有的数据库都有类似的设置,不过mysql用的是`而已.通 ...
 - SQL Structured Query Language(结构化查询语言) 数据库
			
SQL是Structured Query Language(结构化查询语言)的缩写. SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言. 在使用它时,只需要发出“做什么”的命令,“怎么 ...
 - 分布式中使用redis进行session共享
			
摘要 在asp.net web中,session经常用来存储当前用户信息,或者通过session进行登录权限的验证.如果是一台服务器,session的使用没问题,如果使用nginx等实现反向代理,将站 ...