Saban Geschrieben 15. Mai 2008 Geschrieben 15. Mai 2008 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 Zitieren
Kaeyu Geschrieben 15. Mai 2008 Geschrieben 15. Mai 2008 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 Zitieren
Saban Geschrieben 16. Mai 2008 Autor Geschrieben 16. Mai 2008 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 Zitieren
Kaeyu Geschrieben 16. Mai 2008 Geschrieben 16. Mai 2008 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. Zitieren
Empfohlene Beiträge
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.