webForumDet fria alternativet

text editor med med stöd för flera öppna dokument

Java

2 svar · 326 visningar · startad av jme

Medlem sedan maj 20012 237 inlägg
Frågan#1

Hej!

Ännu en fråga som gäller min text editor.

Programmet ska ha stöd för flera samtidigt öppna text-filer.
Detta vill jag lösa genom en layout som liknar den i TextPad.
Dvs att man har en lista på alla öppna filer på vänster sida och text-fältet på höger sida.

jag tänkte använda


left = new JList();
right = new JTextArea();

pane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, left, right);

Jag vill alltså att när man väljer en fil så visas innehållet i JTextArea:n.

Jag har problem med att förstå hur jag ska kunna koppla en JTextArea till varje fil.

Sen vill jag inte ha varje öppen fil i en egen JFrame. Dvs, vad jag absolut inte vill ha är 560 ikoner i Task panelen. Fönstren skall hanteras internt i programmet.

TextPad har löst det så att den har interna fönster som inte syns i Task panelen.

Annars får det vara så att det egentligen inte finns mer än ett fönster, innehållet i JTextArea:n bytts ut om man väljer en annan fil.

Har ni några idéèr?

Ni behöver inte skriva hela lösningen, räcker fint om ni ger lite tips osv... :)

Janimatti

Medlem sedan juli 2001228 inlägg
#2

Pröva med att varje gång du öppnar en fil så så lägger du in texten i en ny TextArea, visar den i din splitPane och lägger undan den i en HashTable eller nåt, med filnamnet som nyckel. Stoppa in filnamnet i din JList. Sen finns det säkert nån event i Jlist som triggas av man selectar i den och ur den eventen plockar du ut filnamnet och med filnamnet plockar du ut rätt TextArea ur HashTabellen som du sen stoppar in i din splitPane.

... eller nåt...

mvh
phonk

Medlem sedan juni 20008 205 inlägg
#3

Om du vill ha inre fönster är det JInfernalFrame som gäller.
http://java.sun.com/docs/books/tutorial/uiswing/components/internalframe.html

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)