Zum Inhalt springen

Einfach gehaltene GUI- kleines Problem


Línes93

Empfohlene Beiträge

Hallo Leute, innerhalb meines Praktikums als Anwendungsentwickler wurde mir die Aufgabe gestellt, eine einfach gehaltene GUI für einen Taschenrechner mithilfe von SWT zu schreiben.


import org.eclipse.swt.SWT;

import org.eclipse.swt.widgets.*;



public class Taschenrechnerdeluxe {


	public static void main(String[] args) {

		Display display = new Display();


		Shell shell = new Shell(display, SWT.SHELL_TRIM);

		shell.setSize(200, 260);

		shell.setText("TR © by Lukas");



		// Eingabefeld


		final Text Eingabefeld = new Text(shell, SWT.BORDER);

		// Buttons


		// Off

		Button Beenden = new Button(shell, SWT.PUSH);

		Beenden.setText("OFF");

		Beenden.setSize(65, 30);

		Beenden.setLocation(10, 185);


		// =

		Button gleich = new Button(shell, SWT.PUSH);

		gleich.setText("=");

		gleich.setSize(65, 30);

		gleich.setLocation(80, 185);


		// Zeile1


		// 7

		Button sieben = new Button(shell, SWT.PUSH);

		sieben.setText("7");

		sieben.setSize(30, 30);

		sieben.setLocation(10, 80);


		// 8

		Button acht = new Button(shell, SWT.PUSH);

		acht.setText("8");

		acht.setSize(30, 30);

		acht.setLocation(45, 80);


		// 9

		Button neun = new Button(shell, SWT.PUSH);

		neun.setText("9");

		neun.setSize(30, 30);

		neun.setLocation(80, 80);


		// DEL

		Button del = new Button(shell, SWT.PUSH);

		del.setText("DEL");

		del.setSize(30, 30);

		del.setLocation(115, 80);

		// 9

		Button ce = new Button(shell, SWT.PUSH);

		ce.setText("CE");

		ce.setSize(30, 30);

		ce.setLocation(150, 80);


		// Zeile2


		// 4

		Button vier = new Button(shell, SWT.PUSH);

		vier.setText("4");

		vier.setSize(30, 30);

		vier.setLocation(10, 115);


		// 5

		Button fuenf = new Button(shell, SWT.PUSH);

		fuenf.setText("5");

		fuenf.setSize(30, 30);

		fuenf.setLocation(45, 115);


		// 6

		Button sechs = new Button(shell, SWT.PUSH);

		sechs.setText("6");

		sechs.setSize(30, 30);

		sechs.setLocation(80, 115);


		// *

		Button mal = new Button(shell, SWT.PUSH);

		mal.setText("*");

		mal.setSize(30, 30);

		mal.setLocation(115, 115);


		// *

		Button teilen = new Button(shell, SWT.PUSH);

		teilen.setText("/");

		teilen.setSize(30, 30);

		teilen.setLocation(150, 115);


		// Zeile3

		// 1

		Button eins = new Button(shell, SWT.PUSH);

		eins.setText("1");

		eins.setSize(30, 30);

		eins.setLocation(10, 150);


		// 2

		Button zwei = new Button(shell, SWT.PUSH);

		zwei.setText("2");

		zwei.setSize(30, 30);

		zwei.setLocation(45, 150);


		// 3

		Button drei = new Button(shell, SWT.PUSH);

		drei.setText("3");

		drei.setSize(30, 30);

		drei.setLocation(80, 150);


		// -

		Button minus = new Button(shell, SWT.PUSH);

		minus.setText("-");

		minus.setSize(30, 30);

		minus.setLocation(115, 150);


		// +

		Button plus = new Button(shell, SWT.PUSH);

		plus.setText("+");

		plus.setSize(30, 30);

		plus.setLocation(150, 150);


		shell.open();

		while (!shell.isDisposed()) {

			if (!display.readAndDispatch())

				display.sleep();

		}

		display.dispose();

	}

}

Ich habe folgendes Problem:

Wenn man das Ganze, so wie es jetzt ist, startet, ist das von mir festgelegte Eingabe bzw. Textfeld nicht da wo es sein sollte. Mein Betreuer hat mir zum "Row-Layout" oder so ähnlich geraten. Wenn ich den Teil allerdings einfüge, seh ich zwar mein Textfeld (:D), allerdings zerreißt mir das die ganze GUI, so wie ich sie haben wollte!:eek:confused:

// Ich habs nochmal rausgesucht: shell.setLayout(new RowLayout());

Ich hab auch schon in Google recherchiert, und habe dazu nichts gefunden.

Hat jemand von euch vielleicht einen Rat, oder vielleicht eine Seite, die mir weiterhelfen kann ??

Liebe Grüße, Línes

Bearbeitet von Línes93
Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn du Layouts wie z.B. das RowLayout benutzt, dann musst du auch die zugehörigen Parameter festlegen, wie z.B. horizontale Ausrichtung, Höhe der Elemente usw. Es reicht nicht, einfach nur setLayout(new RowLayout()) in den Quellcode zu packen (zumindest nicht in den meisten Fällen).

RowLayoutSWTJava Tutorial

Help - Eclipse SDK

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...