当前位置:  技术问答>java相关

两个简单但并不是很多人能够知道答案的问题.

    来源: 互联网  发布时间:2015-01-04

    本文导语:  (1).怎样把程序中所使用的JFrame,JDialog等 窗体左上角的咖啡图标换成自定义图标.(注,要作用于所有同类型的窗体); (2).JFileChooser中,我想选择文件夹,而不是文件,有什么办法吗? | 2 Answer  You can ...

(1).怎样把程序中所使用的JFrame,JDialog等 窗体左上角的咖啡图标换成自定义图标.(注,要作用于所有同类型的窗体);

(2).JFileChooser中,我想选择文件夹,而不是文件,有什么办法吗?

|
2
Answer 

You can use the DIRECTORIES_ONLY option for the setFileSelectionModel method of JFileChooser. For example: 


import javax.swing.JFileChooser;

public class ChooseDir {
   public static void main(String[] args) {
      JFileChooser jfc = new JFileChooser ();
      jfc.setFileSelectionMode (JFileChooser.DIRECTORIES_ONLY);
      System.out.println (jfc.showDialog (null, null));
      System.out.println (jfc.getSelectedFile ());
   }
}




|
(1) JFrame.setIconImage(Image),从这个JFrame弹出来的Dialog有同样的Icon

|
 

Answer 
You can't... at least not directly. 
The dialog may not have a title bar in some windowing environments...atleast that has been the given rationale behind the lack of such a feature 

Starting JDK 1.1.7 a resizable dialog will inherit the icon of the owner frame. Owner frame is the one passed in the Dialog's CTOR. 

If you want to allow a different icon for your dialog from that of your main application frame then you could always create a dummy frame, set the icon on it using the frame.setIconImage(Image); and pass it in the Dialog's CTOR. The dummy frame is never shown. 

This has implications in term of - 

Modality of the Dialog 
Automatic showing/hiding of Dialog when your main application frame is shown/hidden. You can always get around it by listeneing to ComponentEvents on the application frame and showing and hiding the dialog apropriately. 

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 看看会输出什么?结果是equal b,==在string里不是比较两个串是不是相等嘛?
  • 你们看是不是可以这样理解:在用来进行两个对象的比较时,==操作符用来比较两个对象的引用地址,而equals()用来比较两个对象的值。
  • 如何判断两个目录名是不是同一个?
  • java判断两个时间是不是同一天的方法
  • 我的电脑有个两个硬盘,第一块为hdc, 第二块为hdd,为什么不是hda和hdb?
  • 两个对你来说可能不是问题的问题。
  • C++ MultiMaps 成员 swap():交换两个multimaps
  • 急!有两个char buf[]里面是两个日期(2004-08-02),怎样判断两个日期之间的天数?(只能用标准C)
  • C++ Lists(链表) 成员 merge():合并两个list
  • 一个Statement不能同时打开两个ResultSet?为了同时打开两个,可以考虑建立两个Statement?甚至两个Connection?
  • C++ Lists(链表) 成员 swap():交换两个list
  • Keepalived 能配两个虚拟ip吗,匹配两个数据库实例?
  • C++ Maps 成员 swap():交换两个map
  • 可以有其他两个类的实例同时调用一个java实例的两个方法吗?
  • C++ Vectors 成员 swap():交换两个Vector
  • 两个域名,两个端口,一个服务器……
  • C++ Lists(链表) 成员 splice():合并两个list
  • 下载了jbuilder5,是rar格式的,解开后有两个文件,一个是rsc-jb5.bin,一个是rsc-jb5.cue,据说这两个文件是刻光盘的,请问谁知道怎么刻?不会用这两个文件直接安装吧?谢谢!
  • C++ Strings(字符串) 成员 swap():交换两个字符串的内容
  • 基础问题,刚学的!请教,两个日期格式变量,我要求两个日期之间的天数,怎么求?
  • C++ Strings(字符串) 成员 compare():比较两个字符串
  • 主进程有两个线程,fork子进程后复制主进程两个线程的内存么?
  • cocos2d中CCSpriteFrameCache文件同时存在两个plist的问题解决
  • 我机器上安装了linux和win2000两个系统,请问如何在两个系统之间切换。
  • linux字符模式下怎样可以运行两个任务(开两个终端)
  • 听说,初学JAVA有两个开源程序是必看的,请问是哪两个。在那里下载?
  • 由同一个服务端创建两个线程分别向两个客户端同时发送不同的数据···


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3