Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo, ich habe mir ein kleines Programm geschrieben:

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;




class action extends JFrame{

private static final long serialVersionUID =-1113582265865921787L;


	JButton weiter,abbruch;

	JTextField x1,x2,x3,x4,x5,x6;


	class MeinActionLauscher implements ActionListener{

		public void actionPerformed(ActionEvent e){


		x1.setText("Hallo");

		}

	}



	action(String titel)

	{

	super(titel);

	weiter = new JButton("Weiter");

	abbruch = new JButton("Abbruch");

	x1 = new JTextField("",15);

	x2 = new JTextField("",15);

	x3 = new JTextField("",15);

	x4 = new JTextField("",15);

	x5 = new JTextField("",15);

        x6 = new JTextField("",15);


	setLayout(new FlowLayout());


		add(x1);

		add(x2);

		add(x3);

		add(x4);

		add(x5);

		add(x6);

		add(weiter);

		add(abbruch);


	setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);


	weiter.addActionListener(new MeinActionLauscher());

	}


}


public class Main{

	public static void main(String[] args){


		action fenster = new action("Titel");


	fenster.pack();

	fenster.setSize(500,200);

	fenster.setVisible(true);

	}

}

Leider hängt sich die GUI bei dem Buttondruck auf.

Weiß jemand warum die GUI sich aufhängt?(Habe Linux Debian)

mfg

Asgar13

Hallo,

unter Windows 7 32-Bit mit Netbeans und Java 6.23 bekomme ich keinen Fehler, die GUI arbeitet einwandfrei.

Dürfte also an einer veralteten/buggy Java-Version für Debian liegen (falls du auch das "originale" Java benutzt und nicht etwa gcj).

Danke für die Antworten^^

Ich habe jetzt ein catch in den ActionLauscher eingebaut(import auch) und der gibt mir keine Fehlermeldung

	class MeinActionLauscher implements ActionListener{

		public void actionPerformed(ActionEvent e){


			try{

				String aCmdStr ="sh /home/name mk.sh";

				Runtime.getRuntime().exec(aCmdStr).waitFor();

				Runtime.getRuntime().exec(new String[]{"/bin/sh", "-c", "ls -la"});

				x1.setText("Funktioniert");

			}

			catch(IOException ioexp){

			x1.setText("Fehler beim ausführen der Datei...");

			}

			catch(InterruptedException iexp){

			x2.setText("Fehler beim ausführen der Datei...");

			}

		}

	}
Leider compiliere ich dies schon über gcj.:(

name@mytux:~/Desktop$ 

name@mytux:~/Desktop$ gcj --main=Main -o test Main.java

name@mytux:~/Desktop$ ./test 

Getötet

name@mytux:~/Desktop$ 

Habt Ihr weitere Vorschläge?

Nimm mal den Exception Catch mit auf. Wenn dieser auch schon fehlschlägt, kann dies wirklich nur an der Konstellation mit deiner gewählten Distribution liegen.

catch(Exception exp){

x3.setText("Fehler beim ausführen der Datei...");

}

Habe ich jetzt gemacht. Funktioniert immer noch nicht.

Heißt wohl sich über Distributionen informieren.

Wenn ich den Fehler gefunden habe poste ich ihn hier rein.

name@mytux:~$ uname -a

Linux mytux 2.6.26-2-686 #1 SMP Thu Nov 25 01:53:57 UTC 2010 i686 GNU/Linux


name@mytux:~$ cat /etc/issue

Debian GNU/Linux 5.0 \n \l

Soweit meine Distributionen.

Ich habe das Programm dann auf einen anderen Linux Debian Rechner(gleiche Software andere Hardware) getestet und da bricht er bei einem Mouseklick ab.

Dann suche ich mal weiter^^

Hallo,

würde nicht tippen dass es an der Hardware liegt.

BTW: Debbug mit setText halte ich für schlecht, mach lieber nen Druck des Stacktrace , daran könnte es auch noch liegen.

Ok, ich habe eine GUI mit java SWT hinbekommen und diese läuft auch, bleibt nur noch die Frage, wieso swing nicht funktioniert?

Danke nochmal für die Hilfe

Ich benutzte das Open JDk.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.