휴대용 데스크톱 응용 프로그램을 개발 중이며 UI에서 특정 이미지를 사용하고 있습니다. 내 응용 프로그램의 절대 경로는 다음과 같습니다. C :/Users/JP/Documents/EOL/Collection/DataCollection/src/application/특정 이미지가 상대 경로로로드되지 않습니다. JavaFX
위의 지정된 응용 프로그램 폴더에 fxml 및 main class 소스 파일이 있고 " images "폴더에 저장합니다. 모두 .jpg 파일입니다. 상대 경로를 사용하여 fxml 파일에서이 파일을 참조 할 때 1은로드되고 다른 두 경로는로드되지 않습니다.
로드하는 데 실패한 특정 파일 하나가 왜로드되는지 알 수 없습니다.
내 fxml의 세 위치에서 한 파일을 참조 할 때 제대로 작동합니다. 그리고 절대 경로로 3 개의 다른 이미지를 모두 참조하면 잘 동작합니다. 하지만 난 단지 몇 파일에 관해서 상대 경로 문제를 이해하지 못합니다. 아무도 이것으로 나를 도울 수 있습니까?
'@'을 'file :'로 바꾸려고했으나 도움이되지 않았습니다.
<ImageView fitHeight="333.0" fitWidth="450.0" opacity="0.27">
<image>
<Image url="@images/ht.jpg" />
</image>
</ImageView>
<ImageView fitHeight="70.0" fitWidth="68.0" layoutX="5.0" layoutY="7.0">
<image>
<Image url="@images/eol.jpg" />
</image>
</ImageView>
<ImageView fitHeight="103.0" fitWidth="162.0" layoutX="78.0" layoutY="-9.0" preserveRatio="true">
<image>
<Image url="@images/eol2.gif" />
</image>
</ImageView>
Scenic Builder 2.0을 사용하고 있습니까? 그렇다면 fxml 파일을 열면 세 개의 이미지가 보입니까? 그렇지 않다면 Inspector 탭에서 Properties-> Image를로드 해보십시오. 저장하고 닫은 다음 앱을 다시 실행하십시오. –
예. 나는 씬 빌더 2.0을 사용하고 있습니다. 장면 제작자의 모든 이미지를 볼 수 있지만 Java 코드에서 실행할 때 그 중 하나가 보이지 않습니다. 검사기 탭에서도로드를 시도했습니다. 불운! –
코드를 보지 않고도 무슨 일이 일어나고 있는지 정말로 알 수 없습니다. 애플리케이션을 실행하는 동안 [Scenic View] (http://fxexperience.com/scenic-view/)를 사용하여 시도해 볼 수 있으며 'ImageView'노드 아래에있는 것을 볼 수 있습니다. 그 (것)들을 위해 당신은 어떤 용기를 사용하고 있습니까? 어쩌면 그들이로드되어 있지만 볼 수있는 장면 뒤에 보이는 것 뒤에 ... –