저는 picLabel이라는 JLabel에서 일부 이미지를 보여야하는 작은 Java 응용 프로그램을 만들고 있습니다.Java 아이콘이 두 번 표시되지 않습니다
나는 Photo 객체의 JList (이미지의 InputStream를 포함하고 데이터베이스에서 읽음)가 있습니다.
이private void photoListValueChanged(javax.swing.event.ListSelectionEvent evt) {
if (evt.getValueIsAdjusting() == false && photoList.getSelectedIndex() != -1) {
photo = (Photo) photoList.getSelectedValue();
BufferedImage image = ImageIO.read(photo.getContent()) ;
if(image != null) {
picLabel.setIcon(new ImageIcon(image));
}
}
그것은 내가 목록에서 각 요소를 선택 처음으로 완벽하게 작동합니다 : 여기
는 JList의의 valueChanged 이벤트 리스너의 코드입니다. 그러나 이미 선택된 요소를 다시 선택하면 (이미 이미지가 이미 표시됨) 이전에 JLabel을 그대로두고 이미지를 표시하지 않습니다.내가 누락 된 항목이 있습니까?
'picLabel'은'JList'와는 다른가요? 나는. 'JList'는 다른 곳에있는 항목을 선택하기위한 것일뿐입니다? –
정확히, 코드에서 누락 된 한 줄을 추가했습니다. 실제로 JList는 Photo 객체 중 하나를 선택하는 데에만 사용됩니다. – Rittmeyer