# Array oder Vector



## MiMij (25. Okt 2007)

Also ich habe ein kleines Problem.
Ich muss in Canvas selbst ein Textfeld implementieren. Jetzt hatte ich mir ueberlegt, fuer jede Zeile einen array mit chars zu machen, um so leicht neue chars zuzufuegen oder zu loeschen, bzw um den cursor zu verschieben zwischen den buchstaben.
Jetzt muss ich ja auch die einzelnen arrays ansprechen koennen, also je nach dem in welcher zeile ich gerade bin. es steht aber im vornherin nicht fest, wie viele zeilen so ein textfeld hat. Also muss ich doch einen vector erstellen, mit den arrays mit chars.


```
lines = new Vector();
		for (int i = 0; i <= linesAvailable; i++){
			chars = new char[20];
			lines.addElement(chars);
		}
```

Kann man das so machen, oder regelt man sowas eher anders?

Also das es so nicht funktioniert weiss ich, da ich wenn ich jetzt nen element aus dem vector aufrufe, ein Object bekomme und kein Array.


----------



## SlaterB (25. Okt 2007)

als Anfang durchaus denkbar,
natürlich kann man auch höher strukturieren, die Zeile als eigene Klasse erstellen,
aber nicht alles auf einmal,

beim get() das Objekt wieder auf char[] casten


----------



## MiMij (25. Okt 2007)

Ne Zeile als eigene Klasse waere glaub ich zu extrem. Hab jetzt ne Canvas und die hat ein Array mit InputFeldern. Also so ein Canvas kann auch mehrere Felder haben zur Eingabe. Daher hab cih aus dem Eingabe Feld schon nen Object gemacht. Ein problem ist ja auch noch, das der nen Zeilenumbruch macht. Und wenn ich nen Buchstaben zufuege das der den dazufuegt wo der cursor gerade ist. Wuerd ja gerne nen fertiges Textfeld nehmen, aber da kann ich keine text (hintergrund-) farbe und schriftart aendern.


----------



## ice-breaker (25. Okt 2007)

da nen eigenes Input-Feld unmengen Arbeit ist mal nen Tipp von mir:
erstelle erst eine Klasse welche die Tastaturkommandos in Buchstaben umsetzen kann, das ist schon vieeeel Arbeit, da jeder Hersteller ja andere Dinge auf die Tasten legt und Space verschieden funzt etc.
Dann schreibe eine Klasse welche die Klasse von eben nutzt und die Daten speichert und veränderbar macht


----------



## MiMij (26. Okt 2007)

@Ice-breaker
Ich hab ne Klasse die das macht. Ich kann auch jetzt eigene sachen eingeben und Zeilenumbrueche macht der auch. Und das es viiiel Arbeit ist, weiss ich .

Jezt mein neues Problem ist, dass wenn ich die Zeilen begrenze auf 2 zb, der schreibt dann den neuen Buchstaben in die naechste Zeile und hoert dann erst auf. Und setzt evtl noch den Cursor in die naechste Zeile aber ans ENDE. Das macht mich echt wahnsinnig. Zudem hab ich noch das Problem das ich immer schauen muss welches der Textfelder gerade aktuell ist. Wobei das noch das kleinere Problem is


----------

