Zum Inhalt springen

JTextArea Aufzählungszeichen


Saban

Empfohlene Beiträge

Hi!

nun hab ich das erste Problem gerade behoben und stehe schon vor dem nächsten :(

ist es möglich in einer JTextArea Aufzählungszeichen zu nutzen? Nach jedem 'Enter' kommt z. B. so ein runder Schwarzer Punkt oder so?

Geht des überhaupt?

Danke für die Hilfe!

Saban

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Saban!

Klar geht das^^

Einfach Tastatureingabe abfragen.

Kleines Beispiel:

	import java.awt.*;

import java.awt.event.*;

import javax.swing.*;


public class Tests extends JFrame{

	JButton b1 = new JButton("Aufzählungszeichen AUS");

	JTextArea text=new JTextArea(30,30);

	String symbol ="	¤ ";

	boolean zeichen;


	public class ACTL implements ActionListener{

		public void actionPerformed(ActionEvent ae){

			if (!zeichen){

				zeichen=true;

				b1.setText("Aufzählungszeichen AN");

			}

			else if (zeichen){

				zeichen=false;

				b1.setText("Aufzählungszeichen AUS");

			}

		}

	}

	public class KeyL extends KeyAdapter{

		public void keyPressed(KeyEvent ke){

				if ((zeichen) && ke.getKeyCode() ==KeyEvent.VK_ENTER){

					text.append(symbol);

					text.setCaretPosition(text.getText().length());

				}

		}

	}

	Tests(String titel){

		super(titel);


		setLayout(new FlowLayout());


		add(new JScrollPane(text));

		add(b1);

		b1.addActionListener(new ACTL());

		text.addKeyListener(new KeyL());

	}

	public static void main(String args[]){

		Tests win = new Tests("Test");

		win.pack();

		win.setVisible(true);

		win.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);


	}

}

Gruß

Raphael

Link zu diesem Kommentar
Auf anderen Seiten teilen

Morgen Raphael!

erst mal vielen vielen Dank für den total super erklärten Post!

Ich habs auch so weit hin bekommen :) nur kann es sein das wenn man .append benutzt eine neue Zeile hinter dem eingefügten begonnen wird oder mache ich etwas falsch :confused:

bei mir siehts halt so aus

Text vor dem Punkt 'Enter'

¤ 

Text nach dem Punkt

Der Text kommt halt in die Zeile unter den Punkt... Mir fällt leider nichts anderes ein als mir nen Robot zu erstellen der mir dann nach jedem Enter einmal die Lösch-Taste drückt aber das ist auch ne ******* Lösung oder nicht? Fällt dir da vllt was ein?

MfG

Saban

Link zu diesem Kommentar
Auf anderen Seiten teilen

Liegt halt daran, dass man Enter drückt und in einer JTextArea automatisch in die nächste Zeile springt - davor hast du jetzt aber noch das KeyEvent. Zuerst wird das Aufzählungszeichen durch den Enter Druck angefügt und anschließend wird die normale Reaktion der TextArea ausgeführt - das springen in die nächste Zeile.

Du kannst ja die CaretPosition (CursorPosition) mit setCaretPosition(int position) jederzeit ändern wenn du willst.

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...