# Darstellungsproblem (GUI, Texte)



## Sibylle (4. Jul 2010)

Hallo,

in ein Textfeld (GUI) sollen Testdaten (Texte) eingegeben werden, die *unterschiedlich lang* sind.
Danach sollen die einzelnen Zeichen in Charvariabeln übertragen werden.
Bis zu diesem Stdium funktioniert das Programm.

Nun die Frage:
Wie kann man die einzelnen Zeichen in jeweils einem Textfeld darstellen? 
Ich stehe da vor einem Rätsel bzw. vor der Tatsache, dass offensichtlich Kenntnisse fehlen.

Über jede Hilfe würde ich mich sehr freuen.
Vielen Dank im Voraus.

Gruß

Sibylle


----------



## eRaaaa (4. Jul 2010)

???:L Ist es die Hitze, liegt`s an mir oder doch an deiner sehr knappen Problemerklärung...aber ich verstehe fast kein Wort 


Sibylle hat gesagt.:


> in ein Textfeld (GUI) sollen Testdaten (Texte) eingegeben werden, die *unterschiedlich lang* sind.


soweit klar


> Danach sollen die einzelnen Zeichen in Charvariabeln übertragen werden.
> ...
> Nun die Frage:
> Wie kann man die einzelnen Zeichen in jeweils einem Textfeld darstellen?


hier hört`s bei mir schon auf....

Kannst du nicht mal ein Beispiel geben, so dass sich auch Außenstehende ein Bild machen können von dem was du vor hast ?!


----------



## Sibylle (5. Jul 2010)

Halli Basti,

schön, dass Du bei der Lösung helfen möchtest.
Sorry, dass meine Erläuterungen so unverständlich waren.
Ein neuer Versuch:
Eingabe eines Textes in ein Textfeld.
Ausgabe des Textes aber Zeichen für Zeichen untereinander in einem frame.
Ich weiß nicht wie ich das hinbekomme, wenn die Testdaten für die Eingabe unterschiedlich lang sein können. Ist die Aufgabe nun klarer beschrieben?
Geht es womöglich gar nicht mit Textfeldern für die Ausgabe?
Ich bin sehr gespannt auf den weiteren Verlauf dieser Anfrage.
Dank im Voraus.
Gruß
Sibylle


----------



## L-ectron-X (5. Jul 2010)

Immer noch ziemlich schwammig, man kann sich kaum ein Bild von deinem Vorhaben machen.

Womöglich mit einem char-Array, welches den eingegebenen String aufnimmt und einer for-Schleife, welche die Länge des Arrays ermittelt und sich entsprechend um die Ausgabe kümmert.


----------



## Sibylle (5. Jul 2010)

Hallo L-ectron-X,

exakt, so soll es werden. Ich danke Dir für Dein Interesse.
Die Länge lässt sich ja leicht mit der Funktion length feststellen.
Schleife bilden und die einzelnen Zeichen in einen char-Array übertragen.

Gibt es in Java die Möglichkeiten einen variablen Array aufzubauen?

Der array soll dann arrayvariable für arrayvariable unter einander in den Frame gebracht werden.

Jetzt fehlt nur noch die Lösung für dieses Vorhaben.

Mal sehen, was sich da noch tut.

Gruß

Sibylle


----------



## L-ectron-X (5. Jul 2010)

Die Eingabe kannst du so in ein Array umwandeln.

```
char[] c = textfield.getText().trim().toCharArray();
```

Musst dir nur noch überlegen, wo hinein (was für eine Komponente) du die Ausgabe machen willst.


----------



## Eldorado (5. Jul 2010)

Eine "variables Array" ist in Java eine Liste(Größe verändert sich dynamisch). Eine davon ist zum Beispiel die ArrayList.


----------



## ARadauer (6. Jul 2010)

> Wie kann man die einzelnen Zeichen in jeweils einem Textfeld darstellen?


so?


```
import java.awt.Dimension;
import java.awt.GridLayout;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;

public class Test extends JFrame {

   private JPanel panel;

   public static void main(String[] args) {

      final String meinString = "das ist der Text";

      SwingUtilities.invokeLater(new Runnable() {

         @Override
         public void run() {
            Test test = new Test();

            test.panel = new JPanel();
            test.panel.setLayout(new GridLayout(0, 1));

            JScrollPane scrollPane = new JScrollPane(test.panel);
            scrollPane.setPreferredSize(new Dimension(10, 200));

            for (char c : meinString.toCharArray()) {
               System.out.println(c);
               test.panel.add(new JTextField(c + ""));
            }

            test.add(scrollPane);

            test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            test.pack();
            test.setVisible(true);
         }
      });
   }

}
```


----------



## Sibylle (6. Jul 2010)

Hallo ARadauer,

vielen Dank für Deinen Beitrag.
Leider erkenne ich daran meine im Moment noch vorhandenen JAVA-Grenzen.
Viele Zeilen sind neu für mich. Daraus folgt: Ich muss mich deutlich gründlicher mit dieser Sprache befassen. Vielleicht verstehe ich dann alle einzelnen Programmzeilen.
Im Moment bräuchte ich dazu pro Zeile eine Kommentarzeile ...
Ich wünsche Dir einen guten Tag und danke nochmals.
Viele Grüße
Sibylle


----------



## L-ectron-X (6. Jul 2010)

Bis jetzt hast du immer noch nicht genau gesagt, wie das Ganze genau aussehen soll. Es wird immer nur ein weiterer Beitrag mit einer möglichen (geratenen) Lösung gepostet.
Das führt zu nichts. Mach mal Nägel mit Köpfen! Eine Skizze wäre bspw. super.


----------



## Jango (6. Jul 2010)

Kann ich dir sagen, Lex. Man möchte eine Lösung für ein Problem (Lösung, nicht Hilfe), und die auch noch ausreichend kommentiert, damit man das als von sich verkaufen kann. Das ist doch nun wirklich nichts neues...


----------

