Witam!
Piszę właśnie w Javie Edytor HTML typu WYSIWYG. Korzystam z NB.
W tworzonym okienku, na toolbarze mam button, po kliknięciu wykonuje się kod:
<code = java>
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
HTMLEditorKit.InsertHTMLTextAction insertIMG = new HTMLEditorKit.InsertHTMLTextAction("Obrazek", "<IMG SRC=img.gif></IMG>",HTML.Tag.P, HTML.Tag.IMG);
insertIMG.actionPerformed(evt);
}
i moja akcja insertIMG slicznie wstawia mi kodzik html ze znacznikiem <IMG>. Wszystko
działa tak jak chcę (do tej pory).
Teraz chcę zrobić tak aby user mógł sobie wybrać obrazek za pomocą JFileChooser, dzięki temu
będę mógł pobrać nazwę getName() i wstawić ją do InsertHTMLTextAction.
Jednak po modyfikacji powyższej funkcji (o dodanie JFileChooser), wywolanie insertIMG.ActionPerformed(evt) niczego nie wnosi. Klikam na mój przycisk, pokazuje się JFileChooser, wybieram plik i na tym koniec. Czy ktoś wie jak temu zaradzić? Czy tu się nakładają jakieś eventy?
Funkcja po przeróbce wygląda tak:
<code = java>
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
File obrazek = new File(".");
String nazwaPliku;
JFileChooser lokalizacjaObrazka = new JFileChooser(obrazek);
lokalizacjaObrazka.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int approval = lokalizacjaObrazka.showDialog(this, "Wybierz plik");
if (approval == JFileChooser.APPROVE_OPTION){
obrazek = lokalizacjaObrazka.getSelectedFile();
}
nazwaPliku = obrazek.getName();
HTMLEditorKit.InsertHTMLTextAction insertIMG = new HTMLEditorKit.InsertHTMLTextAction("Obrazek", "<IMG SRC="+nazwaPliku+"></IMG>",HTML.Tag.P, HTML.Tag.IMG);
insertIMG.actionPerformed(evt);
}
Z góry dziękuję za wszelką pomoc!