tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
9
ZUGRIFFE
592
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    illaX illaX ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Konstanz
    Beiträge
    268
    Hi,

    ich habe eine JTextArea in einem JScrollPane, wenn ich einen String hinzufüge wird die JTextArea manchmal grau. Woran liegt das?

    Hier mal der code:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    while (strError != null) {
                            taOutput.append(strError + "\n");
                            strError = errorStream.readLine();
                            
                            // auto scroll 
                            Point point = new Point(0,(int)(taOutput.getSize().getHeight()));
                            spOutput.getViewport().setViewPosition(point);
                        }

    Danke für Hilfe
     
    MfG
    illaX

  2. #2
    Registriert seit
    Apr 2004
    Ort
    Ruhrgebiet
    Beiträge
    1.582
    Moin,
    sorry, kann ich nicht nachvollziehen, habe ich auch noch nie gesehen.
     

  3. #3
    illaX illaX ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Konstanz
    Beiträge
    268
    schade :'(
    es passiert immer hierbei:

    // auto scroll
    Point point = new Point(0,(int)(taOutput.getSize().getHeight()));
    spOutput.getViewport().setViewPosition(point);

    ich glaube das habe ich auch von dir im forum gefunden. Gibt es vllt. noch eine andere Möglichkeit?
     
    MfG
    illaX

  4. #4
    illaX illaX ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Konstanz
    Beiträge
    268
    ich glaube ich habe den Fehler gefunden.

    Wir müssen mit dem jre 1.4.2_07 im eclpise arbeiten. Auf meinem Betriebssystem habe ich das 1.5. Also *.jar erstellt und bisher ist es der Fehler noch nicht aufgetreten....
     
    MfG
    illaX

  5. #5
    Registriert seit
    Apr 2004
    Ort
    Ruhrgebiet
    Beiträge
    1.582
    Moin,
    also läuft es mit der 1.4 aber nicht mit 1.5? Oder anders herum?
     

  6. #6
    illaX illaX ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Konstanz
    Beiträge
    268
    es läuft mit 1.5 aber nicht mit 1.4
     
    MfG
    illaX

  7. #7
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    Weshalb musst du denn so kompliziert scrollen?
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    
     package de.tutorials;
     
     import java.awt.BorderLayout;
     import java.awt.event.ActionEvent;
     import java.awt.event.ActionListener;
     import java.io.PrintWriter;
     import java.io.StringWriter;
     import java.text.SimpleDateFormat;
     import java.util.Date;
     
     import javax.swing.JButton;
     import javax.swing.JFrame;
     import javax.swing.JScrollPane;
     import javax.swing.JTextArea;
     import javax.swing.Timer;
     
     public class JTextAreaAutoScrollExample extends JFrame{
     
        public JTextAreaAutoScrollExample(){
            super("JTextAreaAutoScrollExample");
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            
            final JTextArea textArea = new JTextArea(20,60);
            final Timer timer = new Timer(1000,new ActionListener(){
                Date date = new Date();
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm:ss");
                public void actionPerformed(ActionEvent e) {
                    date.setTime(System.currentTimeMillis());
                    textArea.append(simpleDateFormat.format(date) +"\n");
                    try {
                        throw new Exception();
                    } catch (Exception e1) {
                        StringWriter stringWriter= new StringWriter();
                        e1.printStackTrace(new PrintWriter(stringWriter));
                        textArea.append(stringWriter+"\n");
                        
                    }
                }
            });
            timer.setRepeats(true);
            
            JButton btnStartAddingSomeText = new JButton("Start adding some text");
            btnStartAddingSomeText.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e) {
                    timer.start();
                }
            });
            
            JButton btnStopAddingSomeText = new JButton("Stop adding some text");
            btnStopAddingSomeText.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e) {
                    timer.stop();
                }
            });
            
            getContentPane().add(new JScrollPane(textArea),BorderLayout.NORTH);
            getContentPane().add(btnStartAddingSomeText,BorderLayout.CENTER);
            getContentPane().add(btnStopAddingSomeText,BorderLayout.SOUTH);
            pack();
            setVisible(true);
        }
        
        /**
         * @param args
         */
        public static void main(String[] args) {
            new JTextAreaAutoScrollExample();
        }
     }
    Scroll auch automatisch unter Java 1.4.2_07
    (Start add some text drücken...)

    Gruß tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  8. #8
    illaX illaX ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Konstanz
    Beiträge
    268
    Jetzt wo ich mir dein Beispiel angesehen habe Frage ich mich auch warum ich scrollen muss.



    Hier mal mein quellcode
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    BufferedReader inputStream = new BufferedReader(
                                new InputStreamReader(process.getInputStream()));
                        String strInput = "";
                        
                        Pattern p = Pattern.compile(".*[?]");
                        while (strInput != null) {
                            taOutput.append(strInput + "\n");
                            strInput = inputStream.readLine();

    aber ich erkenne keinen unterschied
    Geändert von illaX (07.09.05 um 12:38 Uhr)
     
    MfG
    illaX

  9. #9
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    Also ich hänge die Strings innerhalb des EventDispatchThreads an die JTextArea an. Machst du das vielleicht innerhalb eines anderen Threads? Wenn ja, könntest du mal folgendes versuchen:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
       Pattern p = Pattern.compile(".*[?]");
                         while (strInput != null) {
                             SwingUtilities.invokeLater(new Runnable(){
                        public void run() {
     taOutput.append(strInput + "\n");                      
                        }
                    });
                             strInput = inputStream.readLine();
    Bzw. solltest du dir vorher ein entsprechendes Runnable zusammen bauen und dies dann wiederverwenden...

    gruß tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  10. #10
    illaX illaX ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Konstanz
    Beiträge
    268
    Ich kann mich nur vor dir verneigen...

    DANKE DANKE

    Ich geh mich mal über die EventDispatchThreads informieren

    Schönen Tag noch
     
    MfG
    illaX

Ähnliche Themen

  1. [AfterEffects] weißes Licht,alpha, wird grau
    Von izanagi im Forum Videoschnitt, Videotechnik & -produktion
    Antworten: 4
    Letzter Beitrag: 09.09.10, 14:37
  2. Quark7: Schwarze Schrift wird grau
    Von annomac im Forum Desktop Publishing (DTP)
    Antworten: 0
    Letzter Beitrag: 23.01.08, 18:00
  3. Grau wird gelblich ausgedruckt!?
    Von insanechris im Forum Photoshop
    Antworten: 4
    Letzter Beitrag: 06.09.06, 12:14
  4. Aus grau wird lila
    Von Roman Locher im Forum Photoshop
    Antworten: 3
    Letzter Beitrag: 26.11.04, 09:25
  5. Weißer Hintergrund wird grau gedruckt
    Von Crash_Davis im Forum Desktop Publishing (DTP)
    Antworten: 0
    Letzter Beitrag: 19.02.04, 09:32