SWT Tab in Schleife

crazyharry89

Mitglied
Halli Hallo zusammen,
ich hab mal wieder ein Problem.
Ich schreibe gerade an einem Programm, das bis jetzt eine Textdatei ausliest und den Inhalt über eine for-Schleife in Labels hineinschreibt.

Java:
for(int i = 0; i < Antrag.length; i++)
	{
		Composite Paar = new Composite(rechtsOben, SWT.NONE);
		Paar.setBackground(myColor);
				
		GridLayout minigrid = new GridLayout();
		minigrid.numColumns = 1;
		minigrid.horizontalSpacing = 20;
				
		Paar.setLayout(minigrid);
				
		Label label1 = new Label(Paar, SWT.NONE);
		label1.setFont(nFont);
		label1.setText(Antrag[i]);
				
		Label label2 = new Label(Paar, SWT.NONE);
		label2.setFont(OCRFont);
		label2.setText(Antrag[i+1]);		
		i++;
}
In der Textdatei stehen, in richtiger Reihenfolge immer 2 Wort-Paare. Wie ihr seht schreibt mir meine Schleife die Paare immer in ein Composite und in 2 Label.

Nun möchte ich durch die einzelnen Labels mittels Tabulator-Taste(TAB) durchwechseln können.
Ich habe es schon mittels
"Control[] list1 = new Control[] {label1, label2};
shell.setTabList(list1);"
probiert. Dass das nicht funktioniert, dacht ich mir aber schon. Ich habe wirklich keine Idee mehr und google hilft mir auch nicht weiter :/

Ich hoffe ihr könnt mir helfen
Danke schon mal,
MfG Harry
 

HimBromBeere

Top Contributor
Ich versteh auch nicht, warum man ein Label überhauot auswählbar machen sollte. Möchtest du den Text auswählbar machen, verwende eine Textfeld dafür, Label ist wirklich NUR zum Anzeigen und weiter nichts da.
 

crazyharry89

Mitglied
Entschuldigt, ich habe mich unklar Ausgedrückt.
Es geht dabei um die Oberfläche eines Korrekturprogramms. Auf der linken Seite sieht man das zu korrigierende Dokument, rechts sieht man dann eben den Text, der ausgelesen wurde. Der stand bis jetzt in den Labels drin(er sollte ja nicht veränderbar sein). Ich habe es jetzt aber in ein Textfeld umgewandelt. Dann gibt es eben noch eine Korrekturebene. In dieser soll dann nochmals das Textfeld, auf dem der Focus liegt, stehen, allerdings in einem anderen Widget zwecks Datenbankanbindung.
Daher muss ich den Fokus wechseln und den Text, der im Fokus steht, auslesen können.
Ist das überhaupt möglich, wenn ich die Textfelder über eine Schleife erstelle?
Gehe ich dabei am besten mit einem FocusListener vor?
Wie kann ich den Text aus dem ausgewählten Feld auslesen?

Entschuldigt bitte meine Unkenntniss im Bereich Java. Ich verfolge dieses Projekt im Rahmen meines Studiums und lerne quasi mit dem Projekt erst SWT.
MfG Harry
 

HimBromBeere

Top Contributor
Zuletzt bearbeitet:

Sonecc

Gesperrter Benutzer
Da er laut titel mit SWT arbeitet bringt dein Link nix, wenns dort um Swing geht...
Verstehe immer noch nicht, warum dauernd alle mit Swing ankommen, wenns um SWT geht.

Am besten machst du mal einen Screenshot, damit man sich besser vorstellen kann, was du brauchst.
 

crazyharry89

Mitglied
Halli Hallo, hat leider etwas gedauert, da ich noch andere Projekte abschließen musste.
Zurück zum Projekt, hier ist mal ein Screenshot:
http://img444.imageshack.us/img444/3977/unbenannthub.png

Also auf der Linken Seite wird ganz normal das Image angezeigt. Eigentlich Uninteressant für mein Problem. Auf der rechten Seite werden die Informationen vom OCR-Programm angezeigt. Da ich jedoch keinen Zugriff auf das OCR Programm habe, wird hier einfach eine Textdatei eingelesen.
Da man ja theoretisch nicht weiß, wie viel in der Datei drin steht, werden die Inhalte über eine for-Schleife auf das Composite gezeichnet(Siehe erster Post). Meine Frage bezieht sich nun auf die Verknüpfung zwischen oben und unten. Ich möchte, dass 1.(im verlinkten Image) in 2. angezeigt wird. Durch einen druck auf Tab, soll er dann ein Feld weitergehen. Also als erstes Steht Max in der ComboBox, ich drücke Tab und es steht Mustermann darin, usw.

Mit freundlichen Grüßen
Harry.
 

Sonecc

Gesperrter Benutzer
Danke für den Screenshot :)

Es bleibt aber dabei. Mit einem Label ist das nicht sinnvoll zu lösen.
Du nutzt in diesem Fall am sinnvollsten ein Textfeld (das gerne read only sein kann), da Labels schlicht nicht selektiert oder fokussiert werden können. Ein Label ist nur zur Anzeige da, sonst nichts. Keine Selektion, keine Aktion, nichts. Nur Anzeige.
Wenn du ein Label für etwas anderes nutzen willst, ist das schlechtes Design und höchst unergonomisch
 

crazyharry89

Mitglied
Ich weiß, das hast du mir ja schon gesagt. Ich habe die Labels auch in Textfelder umgewandelt und auf Schreibgeschützt umgestellt. Entschuldige, dass war aus meinem Post nicht ersichtlich. Hier nochmal der neue Quellcode:

Java:
for(int i = 0; i < Antrag.length; i++)
			{
				Composite paar = new Composite(rechtsOben, SWT.NONE);
				paar.setBackground(myColor);
				
				GridLayout minigrid = new GridLayout();
				minigrid.numColumns = 1;
				minigrid.horizontalSpacing = 20;
				
				paar.setLayout(minigrid);
				
				Text text1 = new Text(paar, SWT.SINGLE);
				text1.setFont(nFont);
				text1.setText(Antrag[i]);
				text1.setEditable(false);
				
				Text text2 = new Text(paar, SWT.SINGLE);
				text2.setFont(OCRFont);
				text2.setText(Antrag[i+1]);
				text2.setEditable(false);
						
				i++;
			}

Nun weiß ich aber nicht, wie ich weiter machen soll?
 

Sonecc

Gesperrter Benutzer
Den Textfeldern muss nun ein Focus Listener angehängt werden, so dass diese auf den erhaltenen Focus reagieren.
Hat das Textfeld den Focus erhalten muss es eine entsprechende aktualisierung am Combo vornehmen. Wie die abläuft musst du aber selbst wissen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Vokabelprogram - Schleife für Liste soll schrittweise durchlaufen werden AWT, Swing, JavaFX & SWT 3
G Schleife verlangsamen AWT, Swing, JavaFX & SWT 3
ms_cikar Update swingUtilities Repaint in der Schleife AWT, Swing, JavaFX & SWT 3
W fillRect() in Schleife spukt nur Fehler aus AWT, Swing, JavaFX & SWT 3
heinz ketchup While-Schleife in einem Service für GUI AWT, Swing, JavaFX & SWT 22
A Swing JLabels in einer ForEach Schleife an den JPanel anheften (UNO Netzwerkspiel) AWT, Swing, JavaFX & SWT 1
S While Schleife im Actionlistener AWT, Swing, JavaFX & SWT 1
R MVC Observer While-Schleife AWT, Swing, JavaFX & SWT 3
L JTabbedPane mit for Schleife aufbauen AWT, Swing, JavaFX & SWT 4
I Applet BlueJ Applet - Bild mit if-Schleife zeichnen lassen AWT, Swing, JavaFX & SWT 16
A Problem: repaint() - Schleife AWT, Swing, JavaFX & SWT 3
J GridBagLayout mit Hilfe einer For-Schleife befüllen AWT, Swing, JavaFX & SWT 1
C In der Schleife ActionListener aktivieren AWT, Swing, JavaFX & SWT 3
C Schleife auf Mausklick warten lassen AWT, Swing, JavaFX & SWT 6
S Farbverlauf in for-Schleife berechnen AWT, Swing, JavaFX & SWT 4
H Swing Komponenten per Schleife auf JFrame AWT, Swing, JavaFX & SWT 4
F JLabel mittles Schleife einbinden?? AWT, Swing, JavaFX & SWT 3
D Swing JLabels in einer Schleife aktualisieren AWT, Swing, JavaFX & SWT 2
S Problem mit JLabel (Bewegung in Schleife) AWT, Swing, JavaFX & SWT 7
D Schleife für Button AWT, Swing, JavaFX & SWT 4
R for-Schleife in Applet ausgeben AWT, Swing, JavaFX & SWT 3
H Mit for-schleife die Componenten eines Frames verändern AWT, Swing, JavaFX & SWT 5
A Jedes JTextfield einer klasse in einer foreach schleife abarbeiten AWT, Swing, JavaFX & SWT 3
R jTextField in Schleife ausfuellen AWT, Swing, JavaFX & SWT 4
I Swing repaint wird in for-Schleife aufgerufen - was passiert? AWT, Swing, JavaFX & SWT 12
M Button funktioniert nicht mehr wenn Schleife läuft AWT, Swing, JavaFX & SWT 3
R zweidim. JButton-Array in Schleife -> NullPointerExceptio AWT, Swing, JavaFX & SWT 2
S JMenu und ActionListener per Schleife erzeugen AWT, Swing, JavaFX & SWT 3
R das letzte JLabel in der Schleife will nicht an seinen Platz AWT, Swing, JavaFX & SWT 2
J ActionListener nimmt keine for()-Schleife? AWT, Swing, JavaFX & SWT 4
G For-Schleife AWT, Swing, JavaFX & SWT 4
B Deklaration von vielen Buttons mit Schleife vereinfachen? AWT, Swing, JavaFX & SWT 9
P JRadioButton in Schleife erstellen > wo liegt mein Fehler AWT, Swing, JavaFX & SWT 2
M Schleife mit Button abbrechen AWT, Swing, JavaFX & SWT 4
T JPanel in Schleife anlegen AWT, Swing, JavaFX & SWT 7
raptorrs JTextfelder werden in while-Schleife nicht aktualisiert AWT, Swing, JavaFX & SWT 5
F Einlesen von text in textArea mittels for-schleife AWT, Swing, JavaFX & SWT 3
R Grafische Benutzereingabe in For-Schleife AWT, Swing, JavaFX & SWT 8
L vermutlich Problem in meiner for-Schleife AWT, Swing, JavaFX & SWT 6
S Mehrere Buttons in einer Schleife erzeugen . AWT, Swing, JavaFX & SWT 3
G Schleife mit repaint funktioniert nicht. AWT, Swing, JavaFX & SWT 7
A JTable Schleife AWT, Swing, JavaFX & SWT 4
G while schleife - keylistener AWT, Swing, JavaFX & SWT 4
M JDialog in for-Schleife mit Komponenten bestücken AWT, Swing, JavaFX & SWT 6
S JButton über Schleife erstellen AWT, Swing, JavaFX & SWT 4
F Frame wird nicht angezeigt nach while-Schleife AWT, Swing, JavaFX & SWT 3
R Button löst Schleife aus, danach friert die GUI ein ? AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen

Neue Themen


Oben