Hallo,
in meinem folgenden Beispiel möchte ich in den Textfeldern Texte erfassen und diese dann als eine URL in
einem wieteren Textfeld darstellen und evtl dann mit der URL ein Bild laden.
Mein Problem ist, wenn ich den Text in den Textfeldern ändere wird dies nicht erkannt!
Kann mir bei diesem Problem jemand weiterhelfen?
in meinem folgenden Beispiel möchte ich in den Textfeldern Texte erfassen und diese dann als eine URL in
einem wieteren Textfeld darstellen und evtl dann mit der URL ein Bild laden.
Mein Problem ist, wenn ich den Text in den Textfeldern ändere wird dies nicht erkannt!
Code:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.TextEvent;
import java.awt.image.BufferedImage;
import java.io.File;
import java.net.URL;
import javax.imageio.ImageIO;
import javax.swing.*;
import javax.swing.event.CaretEvent;
import javax.swing.event.CaretListener;
import javax.swing.filechooser.FileFilter;
public class UrlGui extends JFrame
implements ActionListener, CaretListener
{
String f1, f2, f3, f4, f5, f6, f7;
Object f8, f9, f10, f11;
String request;
String pfad;
private static final String[] VERSION = {
"1.0.0","1.1.0","1.1.1","1.2.0"
};
private static final String[] ESPG = {
"31468", "10000"
};
private static final String[] BILDFORMAT = {
"jpeg","png","gif"
};
private static final String[] LAYER = {
"ortho","ortho_color"
};
public UrlGui()
{
super("Bitmap vom WebMapServer laden");
Container cp = getContentPane();
cp.setLayout(new BorderLayout());
addWindowListener(new WindowClosingAdapter(false));
JPanel text = new JPanel();
JPanel request = new JPanel();
JPanel button = new JPanel();
// Textfelder, Combobox und Label hinzufügen
JTextField urlname = new JTextField("www.....?",200);
JTextField liUEY = new JTextField("4234567",7);
JTextField liUEX = new JTextField("5234567",7);
JTextField reOEY = new JTextField("4234567",7);
JTextField reOEX = new JTextField("5234567",7);
JTextField bildbreite = new JTextField("1000",4);
JTextField bildhoehe = new JTextField("1000",4);
JComboBox version = new JComboBox(VERSION);
JComboBox espg = new JComboBox(ESPG);
JComboBox bildformat = new JComboBox(BILDFORMAT);
JComboBox layer = new JComboBox(LAYER);
JLabel burlname = new JLabel("URL(bis einschl. Fragezeichen oder erstes &):");
JLabel bliUEY = new JLabel("Rechtswert der linken unteren Bildecke:");
JLabel bliUEX = new JLabel("Hochwert der linken unteren Bildecke:");
JLabel breOEY = new JLabel("Rechtswert der rechten oberen Bildecke:");
JLabel breOEX = new JLabel("Hochwert der rechten oberen Bildecke:");
JLabel bbildbreite = new JLabel("Bildbreite in Pixel:");
JLabel bbildhoehe = new JLabel("Bildhöhe in Pixel:");
JLabel bversion = new JLabel("WMS-Version:");
JLabel bespg = new JLabel("ESPG-Code:");
JLabel bbildformat = new JLabel("Bildformat:");
JLabel blayer = new JLabel("Layername:");
text.setLayout(new GridLayout(11,2,1,10));
text.setBackground(new Color(204,204,255));
text.add(burlname);
text.add(urlname);
text.add(bliUEY);
text.add(liUEY);
text.add(bliUEX);
text.add(liUEX);
text.add(breOEY);
text.add(reOEY);
text.add(breOEX);
text.add(reOEX);
text.add(bbildbreite);
text.add(bildbreite);
text.add(bbildhoehe);
text.add(bildhoehe);
text.add(bversion);
text.add(version);
text.add(bespg);
text.add(espg);
text.add(bbildformat);
text.add(bildformat);
text.add(blayer);
text.add(layer);
JLabel mr = new JLabel(pfad = ("http://" +urlname.getText()+ "VERSION=" +version.getSelectedItem()+ "&REQUEST=GetMap&FORMAT=image/" +bildformat.getSelectedItem()+
"&TRANSPARENT=false&SRS=ESPG:" +espg.getSelectedItem()+ "&BBOX=" +liUEY.getText()+","+liUEX.getText()+","+reOEY.getText()+","+reOEX.getText()+"&sid=&LAYERS="
+layer.getSelectedItem()+"&STYLES=&WIDTH="+bildbreite.getText()+"&HEIGHT="+bildhoehe.getText()+"&BGCOLOR=0x000000;EXCEPTIONS=INIMAGE"));
JLabel bmr = new JLabel("Ihr GetMapRequest lautet:");
request.setLayout(new GridLayout(2, 1));
request.add(bmr);
request.add(mr);
button.setBackground(new Color(204,204,255));
//OK-Button
JButton okButton = new JButton("LADEN");
okButton.addActionListener(this);
button.add(okButton);
//Abbrechen-Button
JButton cancelButton = new CancelButton("Abbrechen");
cancelButton.addActionListener(this);
button.add(cancelButton);
cp.add(text, BorderLayout.NORTH);
cp.add(request, BorderLayout.CENTER);
cp.add(button, BorderLayout.SOUTH);
}
public void Import(JButton okButton){
okButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
JTextField urlname = (JTextField)ae.getSource();
f1 = urlname.getText();
JTextField liUEY = (JTextField)ae.getSource();
f2 = liUEY.getText();
JTextField liUEX = (JTextField)ae.getSource();
f3 = liUEX.getText();
JTextField reOEY = (JTextField)ae.getSource();
f4 = reOEY.getText();
JTextField reOEX = (JTextField)ae.getSource();
f5 = reOEX.getText();
JTextField bildbreite = (JTextField)ae.getSource();
f6 = bildbreite.getText();
JTextField bildhoehe = (JTextField)ae.getSource();
f7 = bildhoehe.getText();
JComboBox version = (JComboBox)ae.getSource();
f8 = version.getSelectedItem();
JComboBox espg = (JComboBox)ae.getSource();
f9 = espg.getSelectedItem();
JComboBox bildformat = (JComboBox)ae.getSource();
f10 = bildformat.getSelectedItem();
JComboBox layer = (JComboBox)ae.getSource();
f11 = layer.getSelectedItem();
}
});
}
public static void main(String[] args)
{
UrlGui urlgui = new UrlGui();
urlgui.setLocation(100, 100);
urlgui.setSize(600, 500);
urlgui.setVisible(true);
}
public void caretUpdate(CaretEvent arg0) {
// TODO Auto-generated method stub
}
public void actionPerformed(ActionEvent arg0) {
// TODO Automatisch erstellter Methoden-Stub
}
}
Kann mir bei diesem Problem jemand weiterhelfen?