2013-08-02 21 views
8

Używam Eclipse z konstruktorem Windows. Zastanawiam się, czy w ogóle mogę zaimportować obraz, który pojawi się w ramce JFrame, że mogę łatwo się przemieszczać i zmieniać rozmiar zamiast ustawiać lokalizację i rozmiar oraz rysować.Dodawanie obrazu do JFrame

+4

Dodaj zdjęcie do 'JLabel' – Reimeus

+0

To był dobry pomysł, dzięki za to. – user2612619

Odpowiedz

14

Nie ma wyspecjalizowany komponent obrazu umieszczono w Swing (co jest smutne moim zdaniem). Jest więc kilka opcji:

  1. Jako @Reimeus powiedział: Użyj JLabel z ikoną.
  2. Utwórz w programie budującym okna JPanel, który będzie reprezentował lokalizację obrazu. Następnie dodaj własny komponent obrazu do JPanel za pomocą kilku linii kodu, których nigdy nie będziesz musiał zmienić. Powinny one wyglądać tak:

    JImageComponent ic = new JImageComponent(myImageGoesHere); 
    imagePanel.add(ic); 
    

    gdzie JImageComponent jest samodzielnym utworzona klasa, która rozszerza JComponent że przesłania metodę paintComponent() narysować obraz.

+1

@Dvvoter: Chcesz komentarz? –

14

Oto prosty przykład dodanie obrazu do JFrame:

frame.add(new JLabel(new ImageIcon("Path/To/Your/Image.png"))); 
2

Jeśli używasz Netbeans do opracowania, użyj jLabel i zmień jego właściwość icon.