JTextField i ImageIcon

0

Cześć!

Jak umieścić jakiś obiekt ImageIcon w JTextField. Starałem się użyć metody dla JTextField prepareImage ale nic z tego. Będę wdzięczny z pomoc.

0

Może przybliże trochę sytuację z jaką sie zmagam, bo wiedze że brak odpowiedzi, może napisałem za mało jasno.

A wiec mam obiekt JButton, którego konstruktor przyjmuje obiekt ImageIcon.
Po wciśnięciu przycisku chce aby ikona na nim sie znajdująca została wstawiona do obiektu JTextField. Mam zdefiniowany ActionListener dla wyzej wymienionego button, tylko nie wiem co w niego wstawić osiągnąc upragniony efekt. Obecnie jestem na etapie kombinowania z Toolkit.

Oto mój kod:

package server;

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

public class test extends JFrame{

private String path = new String("D:\\Programy\\netbeans-4

1\projekty\server\src\server\papa.jpg");
private ImageIcon gif = new ImageIcon(path);
private JButton button = new JButton("button");
private JButton close = new JButton("close");
private JTextField ekran = new JTextField();
private Button object = new Button();

class Button implements ActionListener  {
    public void actionPerformed(ActionEvent e) {
        JButton button = (JButton)e.getSource();
        if(button.getText().equals("button")) {
            //Image gif = Toolkit.getDefaultToolkit().getImage(path);
            //ImageProducer producer = gif.getSource();
            //ekran.createImage(producer);
            Tu trzeba cos wstawic!!!!!!!
        }
        if(button.getText().equals("close")) {
            setVisible(false);
            System.exit(-1);
        }
    }
 }

public test() {
    button.addActionListener(object);
    close.addActionListener(object);
    setLayout(new GridLayout(2,2));
    add(ekran);
    add(button);
    add(close);
    setSize(300,300);
    setLocation(150,150);
    setVisible(true);
}

public static void main(String[] args) throws Exception {
    test proba = new test();
}

}

Pozdrawiam i proszę o pomoc.

0

Czy próbujesz umieścić ikonkę wewnątrz JTextField? Chyba nie tędy droga. Cytat z dokumentacji klasy JTextField:

JTextField is a lightweight component that allows the editing of a single line of text.

Ten komponent jest przeznaczony do pracy z tekstem, nie z obrazkami.

W Core Java 2, Techniki Zaawansowane, w rozdziale Zaawansowane możliwości biblioteki Swing jest trochę informacji na temat dodawania do komponentów 'niekonwencjonalnej' zawartości, np. obrazków wewnątrz pól tabeli... Może to byłoby tu przydatne :0

1 użytkowników online, w tym zalogowanych: 0, gości: 1