Font in JTextArea ändern

  • Themenstarter Themenstarter Gast
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
G

Gast

Gast
Hallo,
ich habe eine kleine Applikation geschrieben, in der ich eine JTextaArea erstellt und darin den Font geändert habe. Leider sehe ich keinen Erfolg.
Ich hoffe das mir hier jemand helfen kann.

hier mein Programm:
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JScrollPane;

public class JTextareaBeispiel
{
    public static void main() {
        JTextArea textArea;
        JFrame.setDefaultLookAndFeelDecorated(true);
        JFrame frame = new JFrame("JTextarea Demo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   int anzahl=20;//Anzahl der Spieler
   String [] arr=new String[anzahl];

        textArea = new JTextArea(10, 20);
        textArea.setFont(new Font("Curier New", Font.PLAIN, 12));
        textArea.setEditable(false);
        JScrollPane scrollPane = new JScrollPane(textArea);
        frame.add(scrollPane, BorderLayout.CENTER);
        
        String str = "";
        for (int i=0; i < anzahl ;i++) {
            str += "Zeile " + String.format("%2d", i) + "\n";
//            arr[i] = "Zeile " + String.format("%2d", i);
            textArea.setText(str);
//            textArea.append(str + "\n");
        }

        //Display the window.
        frame.pack();
        frame.setVisible(true);
    }// end of main()
}// end of JTextareaBeispiel

L-ectron-X hat den Beitrag hier her verschoben und Codetags hinzugefügt.
 
1. Hast du den String[] args Parameter bei der main vergessen 😉
2. Heißt die Schriftart Courier New
3. Solltest du, statt den Namen einer Schriftart zu verwenden, lieber einen der generelleren Strings "Monospaced", "Serif" oder "SansSerif" nehmen - in deinem Fall also so:
Code:
textArea.setFont(new Font("Monospaced", Font.PLAIN, 12));
4. Falls du die Mustang Beta verwendest, da wurde das System verbessert und die 3 Strings als Konstanten hinzugefügt. Also so:
Code:
textArea.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 12));
 
Recht herzlichen Dank!
Das hätte ich nie gesehen.
jetzt funktioniert es.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben