使ってます
SynthLookAndFeel laf = new SynthLookAndFeel();
laf.load(MyJSlider.class.getResourceAsStream("/ui/demo.xml"), MyJSlider.class);
//laf.load(new URL("file:///var/tmp/demo.xml"));
私のdemo.xmlには次のものがあります:
<style id="SliderTrackStyle">
<opaque value="TRUE"/>
<state>
<imagePainter method="SliderTrackBackground" path="/var/tmp/JavaUnitTest/src/image/menu/bg.jpg" sourceInsets="0 0 0 0" />
</state>
</style>
<bind style="SliderTrackStyle" type="region" key="SliderTrack" />
エラーの原因:
run-single:
Uncaught error fetching image:
java.lang.NullPointerException
at sun.awt.image.URLImageSource.getConnection(URLImageSource.java:115)
at sun.awt.image.URLImageSource.getDecoder(URLImageSource.java:125)
at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:263)
at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:205)
at sun.awt.image.ImageFetcher.run(ImageFetcher.java:169)
BUILD STOPPED (total time: 9 seconds)
回避し、リスクを減らすため。
path=Menu.class.getResourceAsStream("/image/menu/bg.jpg")
例に示されている静的パスの使用を避けたい場合のように、どのように使用できますか。
ファローアップ: