Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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

Geschrieben

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

Geschrieben

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

Geschrieben

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.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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