unter win2000 läufts, unter XP nicht

Status
Nicht offen für weitere Antworten.

derspiegel

Mitglied
Hallo,
mein Problem ist, das in Eclipse mein Programm unter Win200 läuft und unter WinXP nicht.
Im Quelltext bringt Eclipse keine Fehlermeldung. Erst wenn ich Ausführen als Java Anwendung mache, dann bringt Eclipse in der Konsole eine Fehlermeldung. Speziell öffnen sich nicht meine JDialoge wenn ich den entsprechenden Button drücke.

Hier mal mein Quelltext:

Code:
package gebaeude;

import java.awt.*;
import java.awt.event.*;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.net.*;
import java.text.DecimalFormat;

import javax.swing.*;
import javax.swing.border.*;
//import GUIObject.*;

public class GebaudeDig extends JFrame implements ActionListener{
	// Hauptcontainer
	Container con1;
	// Variabeln f³r PanelLayout
    JButton sogehts = new JButton("So geht's");
	JButton luftlad = new JButton("Luftbild laden");
	JButton speiunt = new JButton("Gebäudeecken speichern unter ...");
	JButton straein = new JButton("Straßennamen, Hausnummer eingeben");
	JButton gebdigi = new JButton("Gebäudeecken digitalisieren");
    JButton undoooo = new JButton("Rückgängig");
    JButton löschen = new JButton("Alle Punkte löschen");
	JButton progbee = new JButton("Programm beenden");
	JTextField straße = new JTextField("", 20);
	JLabel straßeL = new JLabel("Straßenname:");
	JTextField hausnr = new JTextField("", 20);
	JLabel hausnrL = new JLabel("Hausnummer");	
	JTextField rechtsw = new JTextField("", 20);
	JLabel rechtswL = new JLabel("Rechtswert");
	JTextField hochw = new JTextField("", 20);
	JLabel hochwL = new JLabel("Hochwert");
	JTextField ecknr = new JTextField("", 20);
	JLabel ecknrL = new JLabel("Nr.-Gebäudeecke");
	JLabel frei1 = new JLabel(" ");
	JLabel frei2 = new JLabel(" ");
	JLabel frei3 = new JLabel(" ");
	JLabel frei4 = new JLabel(" ");
	JLabel frei5 = new JLabel(" ");
	JLabel zwischen1 = new JLabel("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
	JLabel zwischen2 = new JLabel("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
	JLabel zwischen3 = new JLabel("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
	JLabel zwischen4 = new JLabel("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
	JLabel zwischen5 = new JLabel("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
	JLabel zwischen6 = new JLabel("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
	JLabel zwischen7 = new JLabel("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
//	JLabel beda13Label = new JLabel("Zur Beendigung des Programmes ");
//	JLabel beda14Label = new JLabel("Button 5 dr³cken.");
//	JLabel beda15Label = new JLabel("----------------------------------------------------------------------");
//	JLabel beda16Label = new JLabel("");
	ZeichenFlaeche zf; //Variable f³r Klasse ZeichenPad
//	AbfrURL a1; // Variable f³r Klasse AbfrURL
//	ErfMaskGeb emg; // Variable f³r Klasse ErfMaskGeb
	MyMouseListener mouli; // Variable f³r Klasse MyMouseListener
	JPanel jpan; //jpt; // Variabeln f³r die JPanal
	public GebaudeDig(){
		super ("Gebaeudedigitalisierung");
		con1 = getContentPane();
		addWindowListener(new WCA1(true));
		jpan=new JPanel();
		getContentPane().add("East",jpan);
//		jpt=new JPanel();
//		getContentPane().add("South",jpt);
		zf=new ZeichenFlaeche();
		con1.add("Center",zf);
		mouli=new MyMouseListener();
		luftlad.addActionListener(this);
		speiunt.addActionListener(this);
		straein.addActionListener(this);
		gebdigi.addActionListener(this);
		progbee.addActionListener(this);
		jpan.setLayout(new GridLayout(31,1,0,0));
		jpan.add(frei1);
		jpan.add(sogehts);
        jpan.add(zwischen1);
		jpan.add(luftlad);
		jpan.add(zwischen2);
		jpan.add(straein);
		jpan.add(zwischen3);
		jpan.add(speiunt);
		jpan.add(zwischen4);
		jpan.add(gebdigi);
		jpan.add(zwischen5);
		jpan.add(undoooo);
		jpan.add(zwischen6);
		jpan.add(löschen);
		jpan.add(zwischen7);
		jpan.add(progbee);
//		jp.add(beda1Label);
//		jp.add(beda2Label);
//		jp.add(beda3Label);
//		jp.add(beda4Label);
//		jp.add(beda5Label);
//		jp.add(beda6Label);
//		jp.add(beda7Label);
//		jp.add(beda8Label);
//		jp.add(beda9Label);
//		jp.add(beda10Label);
//		jp.add(beda11Label);
//		jp.add(beda12Label);
//		jp.add(beda13Label);
//		jp.add(beda14Label);
//		jp.add(beda15Label);
//		jp.add(beda16Label);
		jpan.add(frei2);
		jpan.add(frei3);
		jpan.add(ecknrL);
		jpan.add(ecknr);
		ecknr.setEditable(false);
		jpan.add(straßeL);
		jpan.add(straße);
		straße.setEditable(false);
		jpan.add(hausnrL);
		jpan.add(hausnr);
		hausnr.setEditable(false);
		jpan.add(rechtswL);
		jpan.add(rechtsw);
		rechtsw.setEditable(false);
		jpan.add(hochwL);
		jpan.add(hochw);
		hochw.setEditable(false);
//		jpt.setLayout(new BorderLayout());
//		jpt.add("East",ut2);
//		jpt.add("West",ut1);
		}
		//Eventbehandlung f³r Buttons
		public void actionPerformed(ActionEvent event){
				Object src = event.getSource();
	    		if (src==sogehts){
				    Sogeht so = new Sogeht();}
	    		else if (src==progbee){
	    			setVisible(false);
	    			dispose();
	    			System.exit(0);}
	    		else if (src==luftlad){
	    			AbfrURL Ab = new AbfrURL();}
	    		else if (src==straein){
	    			ErfMaskGeb Erf = new ErfMaskGeb();}
	    		else if (src==gebdigi){
	    			zf.addMouseListener(mouli);}
	    		else if (src==speiunt){
	    			// Abfragedialog f³r Verzeichnis- und Dateiname
	    			JFrame jf = new JFrame();
	    			FileDialog fd = new FileDialog(jf,"Gebäudeeckpunkte speichern unter ...", FileDialog.LOAD);
	    			fd.setFile("*.txt");
	    			fd.show();
	    			String verz = fd.getDirectory();
	    			String dname = fd.getFile();
	    			String datname = verz+dname;
	    			// Zuweisung an Klasse MyMouseListener
	    			mouli.getDatName(datname);}}
		public int setBreite(int Breite){
			Toolkit tk=Toolkit.getDefaultToolkit();
			Dimension d = tk.getScreenSize();
			Breite = d.width;
			return Breite;}
		public int setHoehe(int Hoehe){
			Toolkit tk=Toolkit.getDefaultToolkit();
			Dimension d = tk.getScreenSize();
			Hoehe = d.height;
			return Hoehe;}
		
  // Beginn der inneren Klasse AbfrURL
  // notwendig, um die Angaben f³r die Zusammenstellung der URL (WMS) abzufragen
  // _bergabe von Variablen an die Klasse MyMouseListener (mRechts, mHoch, bildMin, bildMax)
  // _bergabe der Variable "totalurl" an Klasse ZeichenPad

		
		class Sogeht extends JDialog {
		private JLabel Bedienung = new JLabel("Bedienungsanleitung:",SwingConstants.RIGHT);
		private JTextField bedien = new JTextField ("sghsfghdfghdfghdfh");
		private JButton bu = new JButton ("OK");
		//Methode Sogeht
		public Sogeht (){
		
			setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
	        Toolkit tk=Toolkit.getDefaultToolkit();
	  	  	setSize(300,300);
	  	  	// Ermittlung der Bildschirmaufl÷sung
	  	  	Dimension d = tk.getScreenSize();
	  	  	// mittige Anordnung des Dialogfensters
	  	  	setLocation( (d.width  - getSize().width ) / 2,
	  	  				 (d.height - getSize().height) / 2 );
	  	  	// Eventbehandlung f³r OK-Button
	        bu.addActionListener(new ActionListener() { 
	        	public void actionPerformed(ActionEvent e){	
			dispose();}});
	        setLayout(new GridLayout(4,1));
//	        Bedienung.setBounds(10,10,200,20);
//		    bedien.setBounds(100,100,100,30);
//	        bu.setBounds(150,220,100,40);
	        
	        add(Bedienung);
		    add(bedien);
		    add(bu);
		    setVisible(false);
		}
		}
//		++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//      ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++		
		
		class AbfrURL extends JDialog {
		String totalurl;
		private JLabel wmsLabel = new JLabel("WMS-Service: ",SwingConstants.RIGHT);
	    private JTextField wms = new JTextField("http://www.landesvermessung.sachsen.de/ias/basiskarte/service/SRVDOPFREE/WMSFREE_TK/WMSFREE_TK/wmsservice?", 200);
	    private JLabel epsgLabel = new JLabel("EPSG-Code: ",SwingConstants.RIGHT);
	    private JTextField epsg = new JTextField("31468", 200);
	    private JLabel yMinLabel = new JLabel("Rechtswert (Links): ",SwingConstants.RIGHT);
	    private JTextField yMin = new JTextField("4623258.6", 200);
	    private JLabel yMaxLabel = new JLabel("Rechtswert (Rechts): ",SwingConstants.RIGHT);
		private JTextField yMax = new JTextField("4623582.5", 200);
		private JLabel xMinLabel = new JLabel("Hochwert (Unten): ",SwingConstants.RIGHT);
	    private JTextField xMin = new JTextField("5658652.7", 200);
	    private JLabel xMaxLabel = new JLabel("Hochwert (Oben): ",SwingConstants.RIGHT);
		private JTextField xMax = new JTextField("5658992.0", 200);
		private JLabel bildweiLabel = new JLabel("Bildweite: ",SwingConstants.RIGHT);
		private JTextField bildwei = new JTextField("612", 200);
		private JLabel bildhoeLabel = new JLabel("Bildhoehe: ",SwingConstants.RIGHT);
		private JTextField bildhoe = new JTextField("640", 200);
		private JLabel layerLabel = new JLabel("Layer: ",SwingConstants.RIGHT);
		private JTextField layer = new JTextField("ortho", 200);
		private JLabel bformLabel = new JLabel("Bildformat: ",SwingConstants.RIGHT);
		private JTextField bform = new JTextField("JPEG", 200);		
		private JButton bu1 = new JButton("OK");
		private JButton bu2 = new JButton("Cancel");
//****************************************************************************		
//****************************************************************************
//		private JComboBox cbbildformat = new JComboBox ();
		
//	      cbbildformat.addItem("JPEG");
//	      cbbildformat.addItem("BBBB1");
//	      cbbildformat.addItem("BBBB2");
//	      cbbildformat.addItem("...");
//	      cbbildformat.setSelectedIndex(2);
//	      cbbildformat.setName("cbbildformat");
//	      super.add(cbbildformat);
//	      pnServices.add(cbbildformat);
		
		
		
		
//****************************************************************************		
//****************************************************************************		
		
		public AbfrURL() {
			setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
	        Toolkit tk=Toolkit.getDefaultToolkit();
	  	  	setSize(900,300);
	  	  	// Ermittlung der Bildschirmaufl÷sung
	  	  	Dimension d = tk.getScreenSize();
	  	  	// mittige Anordnung des Dialogfensters
	  	  	setLocation( (d.width  - getSize().width ) / 2,
	  	  				 (d.height - getSize().height) / 2 );
	  	  	// Eventbehandlung f³r OK-Button
	        bu1.addActionListener(new ActionListener() { 
	        	public void actionPerformed(ActionEvent e){
	        		totalurl = new String(wms.getText()+"VERSION=1.1.0&REQUEST=GetMap&FORMAT=image/"+bform.getText()+"&TRANSPARENT=false&SRS=EPSG:"+epsg.getText()+"&BBOX="+yMin.getText()+","+xMin.getText()+","+yMax.getText()+","+xMax.getText()+"&sid=&LAYERS="+layer.getText()+"&STYLES=&WIDTH="+bildwei.getText()+"&HEIGHT="+bildhoe.getText()+"&BGCOLOR=0x000000;&EXCEPTIONS=INIMAGE");
	            	// Angaben f³r Koordinatentransformation (Wandlung von String in double f³r Rechenwerte)
	            	int bildHoehe = Integer.parseInt(bildhoe.getText());
	            	int bildWeite = Integer.parseInt(bildwei.getText());
	            	double bildyMin = Double.parseDouble(yMin.getText());
	            	double bildyMax = Double.parseDouble(yMax.getText());
	            	double bildxMin = Double.parseDouble(xMin.getText());
	            	double bildxMax = Double.parseDouble(xMax.getText());
	            	double mRechts = (bildyMax-bildyMin)/bildWeite; //Errechnung des Ma¯stabsfaktors
	            	double mHoch = (bildxMax-bildxMin)/bildHoehe; //Errechnung des Ma¯stabsfaktors
	            	// Zuweisung an Klasse ZeichenPad
	            	zf.NamensgetURL(totalurl);
	            	// Zuweisung an Klasse MyMouseListener 
	            	mouli.getmRechts(mRechts);
	            	mouli.getmHoch(mHoch);
	            	mouli.getxMin(bildyMin);
	            	mouli.getxMax(bildxMax);
	            	mouli.getBildBreite(bildWeite);
	            	mouli.getBildHoehe(bildHoehe);
	        		// Schlie¯en des JDialog-Fensters
	            	dispose();}});
	        
	        bu2.addActionListener(new ActionListener() { 
	        	public void actionPerformed(ActionEvent e){
	        		// Schlie¯en des JDialog-Fensters
	     			dispose();}});      
	        
	        
	        // Dialoglayout mit Positionierung der Label, Textfelder und Button
	        setLayout(null);
//***************************************************************************
//***************************************************************************
//	        cbbildformat.setBounds(300,300,200,20);
	        
	        
	        
	        
	        
//***************************************************************************	        
//***************************************************************************	        
	        wmsLabel.setBounds(10,10,200,20);
	        epsgLabel.setBounds(10,35,200,20);
	        yMinLabel.setBounds(10,60,200,20);
	        yMaxLabel.setBounds(410,60,200,20);
	        xMinLabel.setBounds(10,85,200,20);
	        xMaxLabel.setBounds(410,85,200,20);
	        bildweiLabel.setBounds(10,110,200,20);
	        bildhoeLabel.setBounds(10,135,200,20);
	        layerLabel.setBounds(10,160,200,20);
	        bformLabel.setBounds(10,185,200,20);
	        wms.setBounds(220,10,580,20);
	        epsg.setBounds(220,35,580,20);
	        yMin.setBounds(220,60,180,20);
	        yMax.setBounds(620,60,180,20);
	        xMin.setBounds(220,85,180,20);
	        xMax.setBounds(620,85,180,20);
	        bildwei.setBounds(220,110,580,20);
	        bildhoe.setBounds(220,135,580,20);
	        layer.setBounds(220,160,580,20);
	        bform.setBounds(220,185,580,20);
	        bu1.setBounds(400,220,100,40);
	        bu2.setBounds(500,220,100,40);
	        add(wmsLabel);
	        add(wms);
	        add(epsgLabel);
	        add(epsg);
	        add(yMinLabel);
	        add(yMin);
	        add(yMaxLabel);
	        add(yMax);
	        add(xMinLabel);
	        add(xMin);
	        add(xMaxLabel);
	        add(xMax);
	        add(bildweiLabel);
	        add(bildwei);
	        add(bildhoeLabel);
	        add(bildhoe);
	        add(layerLabel);
	        add(layer);
	        add(bformLabel);
	        add(bform);
	        add(bu1);
	        add(bu2);
	        setVisible(true);}}
  //Ende der inneren Klasse AbfrURL

		
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++		
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++		
		
		
		
		
	
		
		
  // Beginn der inneren Klasse ErfMaskGeb
  // notwendig f³r Eingabe der Attribute f³r die Gebaeudepunkte
  class ErfMaskGeb extends JDialog {
	  	String strn; // Variable f³r Stassenname
	  	String gebnr; // Variable f³r Gebaeudenummer
	  	//Variabeln f³r Textfelder, Label und Button
		private JLabel strasseLabel = new JLabel("Strasse: ",SwingConstants.LEFT);
	    private JTextField strasse = new JTextField();
	    private JLabel gebnumLabel = new JLabel("Gebaeudenummer: ",SwingConstants.LEFT);
	    private JTextField gebnum = new JTextField();
	    private JButton b2 = new JButton("OK");
		private JButton b3 = new JButton("Cancel");
	    // Methode ErfMaskGeb
		public ErfMaskGeb() {
	        //Positionierung und Gr÷¯e f³r Dialog
	        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	        Toolkit tk=Toolkit.getDefaultToolkit();
	  	  	setSize(250,100);
	  	    Dimension d = tk.getScreenSize();
	  	  	setLocation( (d.width  - getSize().width ) / 2,(d.height - getSize().height) / 2 );
	  	    setLocation( d.width-600,d.height-300 );
	  	    // Eventbehandlung f³r OK-Button
	        b2.addActionListener(new ActionListener() { 
	        	public void actionPerformed(ActionEvent e){
	        		strn = new String(strasse.getText());
		     		gebnr = new String(gebnum.getText());
		     		straße.setText(""+strn); //Textfeldangabe Strassenname setzen
	     			hausnr.setText("" + gebnr); //Textfeldangabe Gebaeudenummer setzen
	     			//Zuweisung an Klasse MyMouseListener
	     			mouli.NamensgetStrasse(strn);
	     			mouli.NamensgetGebNr(gebnr);
	        		// Schlie¯en des JDialog-Fensters
	     			dispose();}}); 
	        b3.addActionListener(new ActionListener() { 
	        	public void actionPerformed(ActionEvent e){
	        		// Schlie¯en des JDialog-Fensters
	     			dispose();}}); 
	        
	        // Layout und Positionierung der Dialogelemente
	        setLayout(new GridLayout(3,1));
	        add(strasseLabel);
	        add(strasse);
	        add(gebnumLabel);
	        add(gebnum);
	        add(b2);
	        add(b3);
	        setVisible(true);}}
  // Ende der inneren Klasse ErfMasGeb

  // Beginn der inneren Klasse MyMouseListener
  // notwendig um Mouseklicks zu setzen (Gebaeudepunkte zu digitalisieren) und die Datensõtze in die 
  // Textdatei zu schreiben
  // _bernahme von Variablen aus der Klasse ErfMaskGeb (strn, gebnr), notwendig f³r Angabe im Datensatz
  // _bernahme von Variablen aus der Klasse AbfrURL (mRechts, mHoch, bildMin, bildMax), notwendig um
  // die korrekten Koordinatenwerte zu errechnen
  // _bernahme der Variablen datname, um Textdateibezeichnung zu erhalten
  class MyMouseListener extends MouseAdapter {
	  String datname= new String("gebaeude.txt"); //Variable f³r Dateiname (gesetzt ist erst einmal "gebaeude.txt")
	  String strn; //Variable f³r Strassenname
	  String gebnr; //Variable f³r Gebaeudenummer
	  int nummer = 0; //Variable f³r Gebaeudenummer
	  Graphics g; 
	  BufferedWriter bw; //Schreibpuffervariable
	  String zeile; //Variable f³r den Textdateisatz
	  double rechts; //Variable f³r den Rechtswert
	  double hoch ; //Variable f³r den Hochwert
	  double mRechts; //Variable f³r den Ma¯stabsfaktor Rechtswert
	  double mHoch; //Variable f³r den Ma¯stabsfaktor Hochwert
	  double bildyMin; //Variable f³r den minimalen Rechtswert
	  double bildxMax; //Variable f³r den maximalen Hochwert
	  double bildBreite; //Variable f³r den minimalen Rechtswert
	  double bildHoehe; //Variable f³r den maximalen Hochwert
	  public void mousePressed(MouseEvent event) {
		  	Graphics g = getGraphics();
		  	g.setColor(Color.blue); // Farbe f³r Punkte wird auf Rot gesetzt
		  	// Ermittlung der Gr÷¯enwerte des Displays und der Gr÷¯e vom Zeichenpad (_bernahme aus Klasse
			// ZeichenPad), um Zuschlagswerte zu event.getX() und event.getY() zu errechnen
			int ursprX=getInsets().left; //Zuschlagsvariable zu x
			int ursprY=getInsets().top; //Zuschlagsvariable zu y
			int x = event.getX()+ursprX;
			int y = event.getY()+ursprY;
			   			if (event.getClickCount() == 1){
			   				if (x<=bildBreite && y<=bildHoehe){
			   					++nummer;
			   				  	// Berechnung des Rechts- u. Hochwertes gerundet auf 3 Nachkommastellen
			   				  	rechts= Math.round((bildyMin+(event.getX()*mRechts))* 1000. ) / 1000.;;
			   				 	hoch= Math.round((bildxMax-(event.getY()*mHoch))* 1000. ) / 1000.;
			   			  		// Zeichnen des Gebaeudepunkte mit Nummer 
			   				  	g.drawOval(x-2,y-2,2,2);
			   			  		g.drawString(""+nummer,x+3,y-3);
//			   			  	    g.drawLine(x,y,0,0);
			   			  		ecknr.setText(""+nummer); //Textfeldangabe Gebaeude-ID setzen
			   			  		rechtsw.setText(""+rechts); //Textfeldangabe Rechtswert setzen
			   			  		hochw.setText(""+hoch); //Textfeldangabe Hochwert setzen
			   			  		DecimalFormat df = new DecimalFormat( "0.000" ); //Dezimalformat f³r String festlegen
			   			  		String srechts = df.format( rechts ); //Stringdezimalformat f³r den Rechtswert
			   			  		String shoch = df.format( hoch ); //Stringdezimalformat f³r den Hochwert
			   			  		// Schreiben des digitalisierten Punktes in die Textdatei
			   			  			try {
			   			  				bw = new BufferedWriter(new FileWriter(datname,true));
			   			  				zeile = nummer + "     " + srechts + "     " + shoch + "     " + strn + "     " + gebnr; 
			   			  				bw.write(zeile);
			   			  				bw.newLine();
			   			  				bw.close();}
			   			  			catch (IOException e) {
			   			  				System.out.println("Fehler beim Erstellen der Datei");}}
			   			  	else{g.drawString("Punkt nicht im Luftbild!",x,y);}}}
  	  	//Methode f³r _bernahme Strassenname von ErfMaskGeb
	    public String getDatName(String datname){
		    this.datname=datname;
		    return datname;}
	  	//Methode f³r _bernahme Strassenname von ErfMaskGeb
	    public String NamensgetStrasse(String strn){
		    this.strn=strn;
		    return strn;}
	    //Methode f³r _bernahme Gebaeudenummer von ErfMaskGeb
	    public String NamensgetGebNr(String gebnr){
	    	this.gebnr=gebnr;
	    	return gebnr;}
	    //Methode f³r _bernahme Ma¯stabsfaktor Rechtswert von AbfrURL
	    public double getmRechts(double mRechts){
	    	this.mRechts=mRechts;
	    	return mRechts;}
	    //Methode f³r _bernahme Ma¯stabsfaktor Hochwert von AbfrURL
	    public double getmHoch(double mHoch){
	    	this.mHoch=mHoch;
	    	return mHoch;}
	    //Methode f³r _bernahme Rechtswert Minimum von AbfrURL
	    public double getxMin(double bildyMin){
	    	this.bildyMin=bildyMin;
	    	return bildyMin;}
	    //Methode f³r _bernahme Hochwert Maximum von AbfrURL
	    public double getxMax(double bildxMax){
	    	this.bildxMax=bildxMax;
	    	return bildxMax;}
	    //Methode f³r _bernahme Bildhoehe von AbfrURL
	    public double getBildHoehe(double bildHoehe){
	    	this.bildHoehe=bildHoehe;
	    	return bildHoehe;}
	    //Methode f³r _bernahme Bildbreite von AbfrURL
	    public double getBildBreite(double bildBreite){
	    	this.bildBreite=bildBreite;
	    	return bildBreite;}}
   //Ende der inneren Klasse MyMouseListener
	
	// Hauptmethode
	public static void main(String[] args){
		GebaudeDig t = new GebaudeDig();
		t.setTitle("Gebaeudedigitalisierung by Christian Spiegel Mat.16969 SG 02/061/21");
		// Ermittlung der Displaygr÷¯e und setzen des JFrames auf diese Werte
		Toolkit tk=Toolkit.getDefaultToolkit();
  	  	Dimension d=tk.getScreenSize();
  	  	t.setSize(d.width,d.height);
		t.setLocation(0,0); //linke oberere Ecke des JFrames wird auf 0,0 gesetzt
		t.setVisible(true); 
		t.requestFocus();}}
// Ende der Klasse GebaeudeDig

// õu¯ere Klasse ZeichenPad mit abstrakter Klasse graphics g; mit _bernahme der Variable totalurl aus AbfrURL
// und Darstellung des Luftbildes ³ber die erhaltene URL; dient auch zur Darstellung der gesetzten 
// Gebaeudepunkte
class ZeichenFlaeche extends JPanel {
	int breite; //Variable f³r Breite des Zeichenpads
	int hoehe; //Variable f³r H÷he des Zeichenpads
	Image bild; //Variable f³r Image
	URL url=null; //Variable f³r URL
	String totalurl; //Variable f³r komplette URL-Bezeichnung, _bernahme von von AbfrURL
	public void paintComponent(Graphics g){
		super.paintComponent(g);
		// Ermitteln der Panelgr÷¯e
	    breite = getWidth()- getInsets().left - getInsets().right;
	    hoehe = getHeight() - getInsets().bottom;
	    g.clearRect(getInsets().left,getInsets().bottom,(int)breite,(int)hoehe);
	    // Laden des Bildes mittels URL
	    try {
		        url = new URL(totalurl);    
				bild=Toolkit.getDefaultToolkit().getImage(url);}
		catch (MalformedURLException malformedurlexception) {
            	System.out.println("Fehler bei URL!");        }
		g.drawImage(bild,0,0,this);}
		// Methode f³r _bernahme der URL aus AbfrURL
		public String NamensgetURL(String totalurl){
			this.totalurl=totalurl;
			return totalurl;}}
// Ende der õu¯eren Klasse Zeichenpad
 

derspiegel

Mitglied
Eclipse bringt folgende Meldung:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: defaultCloseOperation must be one of: DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE, or DISPOSE_ON_CLOSE
at javax.swing.JDialog.setDefaultCloseOperation(Unknown Source)
at gebaeude.GebaudeDig$AbfrURL.<init>(GebaudeDig.java:251)
at gebaeude.GebaudeDig.actionPerformed(GebaudeDig.java:141)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
 

derspiegel

Mitglied
ja OK mit DISPOSE_ON_CLOSE funktioniert es.

es gibt da noch 2 weitere dinge die ich gerne einbauen würde. einmal sollen die kreise nur beim klick mit der linken Maustaste gezeichnet werden und zum anderen möchte ich die kreise mit einer linie verbinden welche mit klick der redhten maustaste unterbrochen wird. geht eine linienverbindung ohne eine klasse zu erzeugen, in der ich die klicks als punkte definiere, weil ich ja immer den vorherigen punkt(mausklick) ansprechen müsste.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Java unter Win 10 Allgemeine Java-Themen 1
M Eclipse unter Linux Lite Allgemeine Java-Themen 2
N iText keine Sonderzeichen und Umlaute unter Windows Allgemeine Java-Themen 13
MarekLanger Filebeat in Docker unter Windows Allgemeine Java-Themen 1
H Java SDK unter 32 Bit Allgemeine Java-Themen 5
Killunox MaxHeap Zuweisung unter Linux funktioniert nicht Allgemeine Java-Themen 1
L Tesseract-OCR 4.0 unter Linux funktioniert nicht Allgemeine Java-Themen 3
J Wie konkret funktioniert das Modulsystem unter Java 11? Allgemeine Java-Themen 4
J jar Dateien unter Windows 7 mit spezifischer jdk öffnen Allgemeine Java-Themen 2
I GUI für kleine Pop-Ups unter Windows Allgemeine Java-Themen 1
H Änderung im maximalen heap space unter Windows 7 ?! Allgemeine Java-Themen 5
E Erfahrungen mit Java/JS Bridge unter nodejs und NodeJS/C++ Bridge Allgemeine Java-Themen 0
Neumi5694 Task-Name unter Windows Allgemeine Java-Themen 4
T PDF-Generierung (itext) - läuft unter Eclipse, bei har aber leere Seite Allgemeine Java-Themen 39
S Korrekte Pfadangaben damit eine .jar Datei unter Windwos läuft. Allgemeine Java-Themen 24
K USB infos unter Linux abfragen? Allgemeine Java-Themen 2
K jar-Datei lässt sich unter Windows nicht verwenden Allgemeine Java-Themen 3
N Lizenzensierung von Java Programmen unter Linux Allgemeine Java-Themen 3
H Summe aller Vielfachen von 3 oder 5 unter 1000. Allgemeine Java-Themen 7
krgewb LookAndFeel unter Mac OS Allgemeine Java-Themen 1
Cromewell JavaFX FXML-File lädt unter Ubuntu nicht Allgemeine Java-Themen 7
D JRE in .jar verpacken unter Windows Allgemeine Java-Themen 4
D Aktuell installierte Java Version auslesen unter Windows Allgemeine Java-Themen 5
R probleme beim starten von jar unter linux Allgemeine Java-Themen 2
S Executable Jar File startet nicht unter Windows 10 Allgemeine Java-Themen 3
C Windows RCP Application unter Linux bauen lassen Allgemeine Java-Themen 3
X Zeile unter einer bestimmen Zeile hinzufügen(File) Allgemeine Java-Themen 1
E Anwendung verhält sich unter Mac anders als Unter Windows. Allgemeine Java-Themen 4
F URI-Scheme mit Java unter MacOS erstellen? Allgemeine Java-Themen 0
E Drucken einer Pdf Datei unter Java. Allgemeine Java-Themen 1
E Sonderzeichen nicht setzbar: Großes Problem bei Programmierung unter Linux Mint mit Virtual Box Allgemeine Java-Themen 5
F Mencoder unter Java Ausführen Allgemeine Java-Themen 0
G Methoden HashMap speichert unter falschen Schlüsseln Allgemeine Java-Themen 6
G IR Fernbedienung unter Java Allgemeine Java-Themen 0
G Wie installiere ich javax-usb unter windows? Allgemeine Java-Themen 0
S JAAS unter Ubuntu? Allgemeine Java-Themen 0
J Compiler-Fehler Compiliert unter Eclipse aber nicht mit javac Allgemeine Java-Themen 0
M Code läuft unter windows aber nicht unter Linux Allgemeine Java-Themen 6
Guybrush Threepwood Kein user.home unter Windows8 Allgemeine Java-Themen 7
P java.nio.file unter Java 6 verwenden Allgemeine Java-Themen 4
R Java-Progamm über Icon starten unter Windows Allgemeine Java-Themen 9
C JasperReports, PDF und "Speichern unter"-Dialog Allgemeine Java-Themen 7
P Eclipse Unter Windows erstelle .jar unter Linux (Ubuntu) funktioniert nicht Allgemeine Java-Themen 5
R ZIP FileSystem unter Windows wirft exception Allgemeine Java-Themen 7
G Runtime.exec beendet Programm unter Linux, wenn Java Programm beendet wird Allgemeine Java-Themen 3
G RXTX native library unter Linux in jar build angeben Allgemeine Java-Themen 4
C Darstellungsproblem unter Debian und OpenJDK Allgemeine Java-Themen 5
R Umlautproblem unter Linux Allgemeine Java-Themen 10
C derby db unter mac os Allgemeine Java-Themen 8
B File Seperator unter verschiedenen OS Allgemeine Java-Themen 2
T Jar File läuft unter Windows aber nicht unter linux Allgemeine Java-Themen 10
B Methode läuft nicht unter UNIX Allgemeine Java-Themen 6
F Process.getInputStream unter Linux Allgemeine Java-Themen 7
S Java-Installation unter Sun OS Allgemeine Java-Themen 3
K Xattr Mac unter Java ansprechen Allgemeine Java-Themen 17
D Clipboard getSystemSelection() funktioniert unter Windows* nicht Allgemeine Java-Themen 3
M Nach Programmdurchlauf werden Zeichen falsch dargestellt + Anderes Verhalten unter Windows Allgemeine Java-Themen 6
L Sicherstellen das 2x die gleichen Daten unter bestimmten Keys enthalten sind. Allgemeine Java-Themen 6
T Javaprogramm unter Linux auf bestimmten Kern starten/laufen lassen ? Allgemeine Java-Themen 22
J Path-Eintrag unter Windows 7 Allgemeine Java-Themen 11
F Eclipse JAVAMAIL läuft nur unter Eclipste Applet Viewer Allgemeine Java-Themen 4
C .jar unter Windows7 über den Explorer starten Allgemeine Java-Themen 6
S (Doppel)Klick-Verhalten vom Desktop unter Java imitieren. Allgemeine Java-Themen 5
Z Probleme mit Java unter Vista/ Windows 7 Allgemeine Java-Themen 12
M Realisierung einer dynamischen Tabelle unter Android Allgemeine Java-Themen 3
C Datei auslesen wie unter Linux mit "tail -f" Allgemeine Java-Themen 3
J Java-Datei unter Mac OS X öffnen - eine Frage der Klasse Allgemeine Java-Themen 2
G Textdatei einlesen unter Windows 7 Allgemeine Java-Themen 4
D Objekte nur unter bestimmten Voraussetzungen erzeugen Allgemeine Java-Themen 4
H String spliten unter berücksichigung von " und \" Allgemeine Java-Themen 7
V linuxprogramm unter java aufrufen??? Allgemeine Java-Themen 4
ruutaiokwu welches design pattern? frage an die oo-experten unter euch... Allgemeine Java-Themen 3
N JAR Datei ausführen unter Angabe einer speziellen Klasse Allgemeine Java-Themen 2
J Eclipse unter Windows 7 Allgemeine Java-Themen 5
T Pfad Anwendungsdaten unter Windows ermitteln Allgemeine Java-Themen 3
B Java Applet unter Mac wird nicht angezeigt Allgemeine Java-Themen 6
A CLASSPATH unter Debian Lenny Allgemeine Java-Themen 4
A Umgebungsvariable unter Windows Vista setzen Allgemeine Java-Themen 60
M Log4J funktioniert nicht unter anderem Benutzer Allgemeine Java-Themen 5
E Alle unter Prozesse der beim schließen mit schließen Allgemeine Java-Themen 3
J dialogys unter linux Allgemeine Java-Themen 4
S Problem beim Drucken auf Netzwerkdrucker unter Linux Allgemeine Java-Themen 9
R Sound unter Java Allgemeine Java-Themen 12
I Fehler unter 64Bit JDK Allgemeine Java-Themen 4
S Jar und Exe verhalten sich unterschiedlich unter Vista Allgemeine Java-Themen 8
D Botschaftssendung unter Klassen Allgemeine Java-Themen 4
H JDIC unter 1.5 Allgemeine Java-Themen 2
G Generics - W.card unter Nutzung von Annotationsklasse? Allgemeine Java-Themen 6
B Frage zu Sichtbarkeit in (Unter)Paketen Allgemeine Java-Themen 9
F Document öffnen unter Linux Allgemeine Java-Themen 4
0 kein Java unter Server 2008 ? Allgemeine Java-Themen 3
J Runtime.exec unter win vista? Allgemeine Java-Themen 10
S unter UNIX - (symbolic) links erkennen? Allgemeine Java-Themen 12
L dateizugriff unter windows nicht behindern Allgemeine Java-Themen 2
W Deployment unter Linux Allgemeine Java-Themen 17
M Drag and Drop FileListFlavor unter Ubuntu - Nautilus Allgemeine Java-Themen 5
F Hilfe beim Starten einer Java Anwendung unter Windows gesuch Allgemeine Java-Themen 8
L Java 1.5 - Anwendung unter 1.6 JRE sehr langsam geworden Allgemeine Java-Themen 8
P JUnit unter Eclipse: Problem mit Exception Allgemeine Java-Themen 8
G Problem mit Serialisiertem Objekt (unter Objekte fehlen?) Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben