Swing文件选择器的制作

1)不管屏幕大小,始终把界面显示到屏幕固定比例的位置

2)Swing文件选择器的使用,Java API上讲的太少了,就一个如何使Swing文件选择器显示出来都困扰我很久,不知道大家刚接触时是否有同感。

3)事件处理怎么判断是哪个控件触发了事件。

4)选项卡的使用

5)滚动条的加入

6)鼠标左右键的区分

(5)和(6)的问题本程序中不包含。以后补上。

程序涉及内容包含选项卡布局,Swing文件选择器及一些控件,还包含最简单的事件处理。抛砖引玉,希望对刚学swing及事件驱动的人有所帮助。

 
 
 
  1. importjava.io.*;  
  2. importjava.awt.*;  
  3. importjavax.swing.*;  
  4. importjava.awt.event.*;  
  5. publicclassYFileChooserimplementsActionListener{  
  6. JFrameframe=newJFrame("文件选择器实例");  
  7. JTabbedPanetabPane=newJTabbedPane();//选项卡布局  
  8. Containercon=newContainer();//布局1  
  9. Containercon1=newContainer();//布局2  
  10. JLabellabel1=newJLabel("选择目录");  
  11. JLabellabel2=newJLabel("选择文件");  
  12. JTextFieldtext1=newJTextField();  
  13. JTextFieldtext2=newJTextField();  
  14. JButtonbutton1=newJButton("...");  
  15. JButtonbutton2=newJButton("...");  
  16. JFileChooserjfc=newJFileChooser();//文件选择器  
  17. YFileChooser(){  
  18. jfc.setCurrentDirectory(newFile("d:\\"));
    //文件选择器的初始目录定为d盘  
  19. //下面两行是取得屏幕的高度和宽度  
  20. doublelx=Toolkit.getDefaultToolkit().getScreenSize().getWidth();  
  21. doublely=Toolkit.getDefaultToolkit().getScreenSize().getHeight();  
  22. frame.setLocation(newPoint((int)(lx/2)-150,(int)(ly/2)-150));
    //设定窗口出现位置  
  23. frame.setSize(300,150);//设定窗口大小  
  24. frame.setContentPane(tabPane);//设置布局  
  25. //下面设定标签等的出现位置和高宽  
  26. label1.setBounds(10,10,70,20);  
  27. label2.setBounds(10,30,100,20);  
  28. text1.setBounds(80,10,120,20);  
  29. text2.setBounds(80,30,120,20);  
  30. button1.setBounds(210,10,50,20);  
  31. button2.setBounds(210,30,50,20);  
  32.  
  33. button1.addActionListener(this);//添加事件处理  
  34. button2.addActionListener(this);//添加事件处理  
  35. con.add(label1);  
  36. con.add(label2);  
  37. con.add(text1);  
  38. con.add(text2);  
  39. con.add(button1);  
  40. con.add(button2);  
  41. con.add(jfc);  
  42. tabPane.add("目录/文件选择",con);//添加布局1  
  43. tabPane.add("暂无内容",con1);//添加布局2  
  44. frame.setVisible(true);//窗口可见  
  45. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    //使能关闭窗口,结束程序  
  46. }  
  47. publicvoidactionPerformed(ActionEvente){//事件处理  
  48. if(e.getSource().equals(button1)){//判断触发方法的按钮是哪个  
  49. jfc.setFileSelectionMode(1);//设定只能选择到文件夹  
  50. intstate=jfc.showOpenDialog(null);
    //此句是打开文件选择器界面的触发语句  
  51. if(state==1){  
  52. return;//撤销则返回  
  53. }  
  54. else{  
  55. Filef=jfc.getSelectedFile();//f为选择到的目录  
  56. text1.setText(f.getAbsolutePath());  
  57. }  
  58. }  
  59. if(e.getSource().equals(button2)){  
  60. jfc.setFileSelectionMode(0);//设定只能选择到文件  
  61. intstate=jfc.showOpenDialog(null);
    //此句是打开文件选择器界面的触发语句  
  62. if(state==1){  
  63. return;//撤销则返回  
  64. }  
  65. else{  
  66. Filef=jfc.getSelectedFile();//f为选择到的文件  
  67. text2.setText(f.getAbsolutePath());  
  68. }  
  69. }  
  70. }  
  71. publicstaticvoidmain(String[]args){  
  72. newYFileChooser();  
  73. }  

网站标题:Swing文件选择器的制作
当前链接:http://www.shufengxianlan.com/qtweb/news38/348088.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联