| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1746 人关注过本帖
标题:如何在java程序中使用相对路径而不是绝对路径
只看楼主 加入收藏
ygp_sfec
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:87
专家分:115
注 册:2009-9-8
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
如何在java程序中使用相对路径而不是绝对路径
我想在按钮中绘制一副图像,自己编制了一个按钮类,按钮类的实现参见https://bbs.bccn.net/thread-285809-1-1.html,但是在设置图像时遇到了问题,图像文件名只能使用绝对路径,而不能使用相对路径,使用绝对路径的设置代码如下:
        gc.gridwidth = GridBagConstraints.REMAINDER;
        //m_btnOK = new CButton("&OK",true);
        AddComponent(m_btnOK,gridbag,gc);
        m_btnOK.SetAsDefault(true);
        Image image = Toolkit.getDefaultToolkit().getImage("E://My Documents//workspace1//MenuTest//src//MenuTestUI//bitmap1.png");
        m_btnOK.SetImage(image);
运行得到的界面如下:
图片附件: 游客没有浏览图片的权限,请 登录注册

而使用相对路径的代码如下:
       gc.gridwidth = GridBagConstraints.REMAINDER;
        //m_btnOK = new CButton("&OK",true);
        AddComponent(m_btnOK,gridbag,gc);
        m_btnOK.SetAsDefault(true);
        Image image = Toolkit.getDefaultToolkit().getImage("bitmap1.png");
        m_btnOK.SetImage(image);
运行得到的界面如下:
图片附件: 游客没有浏览图片的权限,请 登录注册

也就是图像根本没有加载,调试察看CButton类对象m_btnOK的成员变量m_image发现除了文件名外,其余都是空的对象,我把图像文件Bitmap1.png在目录E:\My Documents\workspace1\MenuTest\bin和E:\My Documents\workspace1\MenuTest\bin\MenuTestUI以及E:\My Documents\workspace1\MenuTest\src、E:\My Documents\workspace1\MenuTest\src\MenuTestUI各放了一份副本都没用,请各位高手不吝指教。
搜索更多相关主题的帖子: 路径 java 
2009-09-20 23:39
gameohyes
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:53
帖 子:1275
专家分:3629
注 册:2009-3-5
收藏
得分:7 
对于路径的问题  一般都是把所有得到文件放在一个包(即一个文件夹)里  这样要是移动的话 就把那个包一起移动  这样不要用自己电脑上的C:/../..等盘符  就是要把图片和你的文件放在一个文件夹  例如:你的的class文件放在一个名叫net的文件夹下,现在你要在你的程序中添加一张为 myPicture.gif的图片,你就在net文件下下新建一个名为image的文件夹(名字自己随便取)【一般都习惯把图片放在一个统一的目录下】,在把myPicture.gif放在image下,这样你在编写代码的时候就只需写image/myPicture.gif就可以了  这样 你移动的时候只需要把net 这个文件夹移动就是了

C#超级群 74862681,欢迎大家的到来!
2009-09-21 00:06
ygp_sfec
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:87
专家分:115
注 册:2009-9-8
收藏
得分:0 
不行啊,我的CFileDialog类和CButton类都在menuTestUI包中,我在该文件夹中建立了一个image文件夹,全路径为E:\My Documents\workspace1\MenuTest\bin\menuTestUI\image,按照上述方法,图片还是无法显示,而改成了"E://My Documents//workspace1//MenuTest//bin//menuTestUI//image//bitmap1.png"就显示出来了,这样岂不是编写的程序无法移动了?
2009-09-21 11:12
pywepe
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:296
专家分:483
注 册:2009-4-5
收藏
得分:7 
回复 楼主 ygp_sfec
我一看到没有按java命名习惯的
就看不下去
最不爽的匈牙利命名法
下横线
慢得要死
又难看


[ 本帖最后由 pywepe 于 2009-9-22 17:48 编辑 ]

java群
62635216
欢迎加入
2009-09-22 17:46
ygp_sfec
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:87
专家分:115
注 册:2009-9-8
收藏
得分:0 
没办法,C++习惯了^_^
2009-09-22 23:47
快速回复:如何在java程序中使用相对路径而不是绝对路径
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036488 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved