Repaint Funktioniert nicht

Doktor_DOOM

Mitglied
Guten Abend,
ich habe ein JUNG Projekt welches aus mehereren Klassen besteht.
Die Klasse DBPlot wie folgt zusehen hat ein ein paar Listener implementiert, diese schauen ob in der Klasse GUIInterface sich etwas geändert hat.
Mit drücken des Buttons "clearButton" würde ich gerne den Graphen der VisualisionViewer löschen und einen neuen zeichnen.
Der Clearbutton Listener wird gerufen aber leider nicht repaint funktion. Ich habe dem "graph" createForestTestempty forest übergegeben, dadurch ist der Graph wie eine leere Liste. Danach habe ich versucht das ganze zu repainten in der Klasse GuiInterface. Leider ohne Erfolg.
Ein weiterer Versuch war eine methode "redrawing" in der Klasse GuiInterface zu implementieren und zu rufen leider auch ohne erfolg. Ich hoffe Ihr könnt mir weiterhelfen.

Java:
    public DBPlot() {
                
        user = System.getProperty("user.name"); // user von system bekommen
            
        try {
            SearchList  = this.getUserSearchlist(user);
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    
        Container content = frame.getContentPane();
        
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

        content.add(new GuiInterface());
        GraphLayoutSelector.InputtextF.addActionListener(this); //   addDocumentListener(new DocumentListener() {})       addActionListener(this) == "A0")
        GraphLayoutSelector.clearbutton.addActionListener(this);
        GraphLayoutSelector.GraphSlider.addChangeListener(this);
        frame.addWindowListener(new WindowHandler());
        
        //actionPerformed(null);
        frame.pack();
        frame.setVisible(true);

    }
    
    /**
     * Class WindowHandler:  Is an internal class of an Window GUI Listner. Which listen if the gui closed. If the gui closed than store the search behaivior.
     *
     *
     */
    class WindowHandler extends WindowAdapter{
        public void windowClosing(WindowEvent e) {
              System.out.println("windowClosing");
              try {
                setUserSearchlist(user);
            } catch (FileNotFoundException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
              System.exit(0); // End the application
            }
          
    }

    /**
     * Funciton actionPerformed:  Is an Listner of the Clear Button and Input Textfield.
     *
     * Parameter ce: Is the Changed Slider value.
     */
    
    @Override
    public void actionPerformed(ActionEvent e) { // after an Enter, should be searched in Graph DB
        if(e.getSource() == GraphLayoutSelector.InputtextF)
        {
            if((!SearchList.contains(GraphLayoutSelector.InputtextF.getText()))&& !GraphLayoutSelector.InputtextF.getText().isEmpty())
                SearchList.add(GraphLayoutSelector.InputtextF.getText());
                GraphLayoutSelector.InputtextF.setText("");
                GraphLayoutSelector.treeButton.setEnabled(true);
                GraphLayoutSelector.radialButton.setEnabled(true);
                plotgraph(SearchList.get(SearchList.size() - 1));
            }else if(e.getSource()== GraphLayoutSelector.clearbutton)// starts an new search
            {
                GuiInterface.graph = GraphHandler.createForestTestempty();
                GuiInterface.vv.getComponent().removeAll();
                GuiInterface.panel.revalidate();
                GuiInterface.panel.repaint();
                GuiInterface.redrawing();
                frame.revalidate();
                frame.repaint();
                
            }
            System.out.println("Im here ");
        }
        
        public static void main(String[] args) throws Exception{
        
        DBPlot PlotGui = new DBPlot();
            
    }   
}




Code:
public class GuiInterface extends JPanel {

    SplitterContext<Object> splitterContext =
            SplitterContext.of(new RStarLeafSplitter<>(), new RStarSplitter<>());

    final DefaultGraphMouse<String, Integer> graphMouse = new DefaultGraphMouse<>();


    public static Graph<String, Integer> graph;

    public static     VisualizationScrollPane panel;

    static Predicate<Integer> edgePredicate = e -> e < 100;


    private static final Logger log = LoggerFactory.getLogger(GuiInterface.class);

    public static VisualizationViewer<String, Integer> vv;



    /** the visual component and renderer for the graph */

    Dimension layoutSize = new Dimension(700, 700);
    Dimension viewSize = new Dimension(700, 700);
    

    public static void redrawing()
    {
        
        vv.repaint();
        //panel.removeC
        panel.validate();
        panel.repaint();
    }
    

    public GuiInterface() { setLayout(new BorderLayout());


      graph = GraphHandler.createForestTest();

      GraphBuilder<String, Integer, Graph<String, Integer>> tree =
                GraphTypeBuilder.<String, Integer>forGraphType(DefaultGraphType.dag())
                        .edgeSupplier(SupplierUtil.createIntegerSupplier())
                        .buildGraphBuilder();


      
        vv =
                VisualizationViewer.builder(graph)
                        .layoutAlgorithm(new StaticLayoutAlgorithm<>())
                        .layoutSize(layoutSize)
                        .viewSize(viewSize)
                        .graphMouse(graphMouse)
                        .build();

        vv.addPreRenderPaintable(
                new LayoutPaintable.LayoutBounds(
                        vv.getVisualizationModel(), vv.getRenderContext().getMultiLayerTransformer()));

      
        
        Box controls = Box.createHorizontalBox();
        controls.add(
                GraphControlHelpers.getCenteredContainer(
                        "Layout Controls", GraphLayoutSelector.builder(vv).initialSelection(1).build()));
        controls.add(GraphControlHelpers.getCenteredContainer("Zoom",GraphControlHelpers.getZoom(vv)));
        add(controls, BorderLayout.SOUTH);



        panel = new VisualizationScrollPane(vv);
        redrawing();
        repaint();
        add(panel);
    }
 

tomnelson

Neues Mitglied
This is a very bad mistake:
GuiInterface.vv.getComponent().removeAll();

There are many sample programs that change graphs, change layouts, or start with an empty graph.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Joew0815 JDialog repaint() funktioniert nicht wie gewünscht. AWT, Swing, JavaFX & SWT 2
C Repaint() funktioniert nicht in TabbedPanel AWT, Swing, JavaFX & SWT 5
N Swing repaint() funktioniert nicht AWT, Swing, JavaFX & SWT 5
C repaint() funktioniert nicht; AWT, Swing, JavaFX & SWT 2
I Java Swing - repaint() funktioniert nicht AWT, Swing, JavaFX & SWT 4
T Repaint funktioniert nicht über JViewPort AWT, Swing, JavaFX & SWT 2
G Schleife mit repaint funktioniert nicht. AWT, Swing, JavaFX & SWT 7
T Swing repaint funktioniert nur manchmal? AWT, Swing, JavaFX & SWT 6
T JLabel.setText() funktioniert erst nach repaint() etc.? AWT, Swing, JavaFX & SWT 4
D JUNG Repaint function does not work AWT, Swing, JavaFX & SWT 2
E repaint Probleme AWT, Swing, JavaFX & SWT 13
G listener repaint() - verschiedene Darstellung AWT, Swing, JavaFX & SWT 24
ExceptionOfExpectation Textdarstellung auf einem Canvas mit Hilfe von repaint(); AWT, Swing, JavaFX & SWT 6
J actionperformed wird nicht aufgerufen/ repaint() AWT, Swing, JavaFX & SWT 6
L Swing repaint() ruft paintComponent(g1d) nicht auf AWT, Swing, JavaFX & SWT 12
G Repaint wird nicht durchgeführt AWT, Swing, JavaFX & SWT 8
I Swing Verhindern, dass repaint() kaskadiert AWT, Swing, JavaFX & SWT 6
ms_cikar Update swingUtilities Repaint in der Schleife AWT, Swing, JavaFX & SWT 3
T Swing Probleme mit repaint() bzw. JScrollPane AWT, Swing, JavaFX & SWT 7
N Swing JButtons werden nach repaint() doppelt dargestellt AWT, Swing, JavaFX & SWT 12
K Methode repaint() AWT, Swing, JavaFX & SWT 1
B Swing Wann brauche ich repaint() ? AWT, Swing, JavaFX & SWT 1
javampir Swing repaint in JavaFX Anwendung AWT, Swing, JavaFX & SWT 3
A repaint(); AWT, Swing, JavaFX & SWT 9
J Swing ungewünschter Nebeneffekt bei der repaint() Methode AWT, Swing, JavaFX & SWT 3
A Problem: repaint() - Schleife AWT, Swing, JavaFX & SWT 3
S 2D-Grafik repaint()-Aufruf. Und nichts geschieht. AWT, Swing, JavaFX & SWT 5
P JPanel und Repaint AWT, Swing, JavaFX & SWT 5
J JavaFX Automatisches Neuzeichnen ("Repaint") abstellen. AWT, Swing, JavaFX & SWT 10
F JTable Repaint Issue AWT, Swing, JavaFX & SWT 1
N Observer: update ruft nicht repaint auf AWT, Swing, JavaFX & SWT 0
S JList repaint AWT, Swing, JavaFX & SWT 1
L NullpointerException und Probleme mit repaint() AWT, Swing, JavaFX & SWT 11
M Repaint mittels Button richtig aufrufen klappt nicht AWT, Swing, JavaFX & SWT 1
B Repaint auf JFrame, JLabel und ImageIcon AWT, Swing, JavaFX & SWT 4
K 2D-Grafik Paint - Wie binde ich repaint ein? AWT, Swing, JavaFX & SWT 8
D repaint() klappt anders als vorgestellt AWT, Swing, JavaFX & SWT 15
R Repaint() in Schleifen, Threads AWT, Swing, JavaFX & SWT 13
B Swing Repaint Problem - mal wieder AWT, Swing, JavaFX & SWT 5
P 2D-Grafik Gezielter Repaint einzelner Frames in Java-Game AWT, Swing, JavaFX & SWT 6
javampir Bei repaint nix los AWT, Swing, JavaFX & SWT 2
B Swing repaint() AWT, Swing, JavaFX & SWT 3
Ernesto95 AnimationLoop - Problem bei Aufruf von repaint AWT, Swing, JavaFX & SWT 6
P 2D-Grafik repaint(); steigender RAM Verbauch AWT, Swing, JavaFX & SWT 6
Y KeyListener, GUI Thread, repaint AWT, Swing, JavaFX & SWT 7
S Applet Repaint AWT, Swing, JavaFX & SWT 3
M Programm hängt sich auf nachdem repaint() benutzt wurde AWT, Swing, JavaFX & SWT 2
R Swing Grafikfehler bei repaint AWT, Swing, JavaFX & SWT 2
N repaint() blockieren AWT, Swing, JavaFX & SWT 6
K canvas zeig nach repaint nichts an AWT, Swing, JavaFX & SWT 8
M Repaint() AWT, Swing, JavaFX & SWT 14
J Swing repaint, repaint, repaint AWT, Swing, JavaFX & SWT 8
M Applet repaint() verlangsamen AWT, Swing, JavaFX & SWT 7
R paintComponent malt bei repaint() Rahmen um Panel AWT, Swing, JavaFX & SWT 7
P EDT Problem? Kein Aufruf der repaint Methode AWT, Swing, JavaFX & SWT 6
V Applet JApplet Flackern durch Repaint AWT, Swing, JavaFX & SWT 11
kodela Problem mit repaint() AWT, Swing, JavaFX & SWT 3
N Swing Funktion repaint() updated nicht AWT, Swing, JavaFX & SWT 5
F repaint reagiert nicht AWT, Swing, JavaFX & SWT 8
S AWT Probleme mit repaint() AWT, Swing, JavaFX & SWT 2
D Repaint()? Oder was??? AWT, Swing, JavaFX & SWT 5
M Eine nicht korrekte Darstellung bei repaint() warum? AWT, Swing, JavaFX & SWT 4
T 2D-Grafik Kreis "von Hand" zeichnen -> jedesmal repaint()? AWT, Swing, JavaFX & SWT 6
R validate(), repaint funktionieren nicht! AWT, Swing, JavaFX & SWT 7
B AWT Canvas überdeckt nach repaint() JComboBox-Optionen AWT, Swing, JavaFX & SWT 2
B Swing verschachteltes GUI: repaint() ändert mehr als nur gewünschte Component AWT, Swing, JavaFX & SWT 4
S validate(), invalidate(), repaint(),... Was kommt wann? AWT, Swing, JavaFX & SWT 5
M 2D-Grafik repaint() löscht altes Bild nicht AWT, Swing, JavaFX & SWT 2
J repaint() nicht richtig? AWT, Swing, JavaFX & SWT 6
R repaint erzwingen AWT, Swing, JavaFX & SWT 3
Zettelkasten repaint() von anderen Klassen aufrufen AWT, Swing, JavaFX & SWT 4
H repaint()-Problem - 50% CPU-Auslastung AWT, Swing, JavaFX & SWT 4
P repaint während Thread läuft AWT, Swing, JavaFX & SWT 9
D Repaint Frage, Design Frage AWT, Swing, JavaFX & SWT 2
N Swing MainWindow(JFrame) aktualisieren(neuzeichnen) repaint AWT, Swing, JavaFX & SWT 4
T repaint() Problem AWT, Swing, JavaFX & SWT 2
A 2D-Grafik Repaint - Alternative? AWT, Swing, JavaFX & SWT 3
C JLabel, JTextArea, JScrollPane. repaint(); ? AWT, Swing, JavaFX & SWT 6
K Jpanel repaint problem (Fullscreen) AWT, Swing, JavaFX & SWT 5
V Swing Bei repaint() tut sich nichts AWT, Swing, JavaFX & SWT 7
G ColorReader, bei Fadenkreuz zeichnen mit repaint() flackern AWT, Swing, JavaFX & SWT 19
I Canvas Repaint Probleme AWT, Swing, JavaFX & SWT 2
D Swing Actionlistener verhindert repaint?! AWT, Swing, JavaFX & SWT 2
S JLabel repaint AWT, Swing, JavaFX & SWT 8
C Swing Linux mag mein Swing-repaint() nicht... AWT, Swing, JavaFX & SWT 7
J Swing paintComponent() - repaint() - BufferedImage anzeigen AWT, Swing, JavaFX & SWT 5
Luk10 repaint() auch in anderen Klassen! AWT, Swing, JavaFX & SWT 6
A repaint() zu langsam, bitte um alternativen AWT, Swing, JavaFX & SWT 5
T Überlappende Transparenz und repaint() AWT, Swing, JavaFX & SWT 10
E EINFACHE Verständnisfrage zu repaint(), paintComponent(), usw. AWT, Swing, JavaFX & SWT 16
O Girdbag Formatierung nach repaint verloren AWT, Swing, JavaFX & SWT 2
E Swing - repaint() AWT, Swing, JavaFX & SWT 6
T Image wird nicht angezeigt?! - MediaTracker/repaint AWT, Swing, JavaFX & SWT 9
E AWT Problem mit Repaint (in Loop oder Timer) AWT, Swing, JavaFX & SWT 3
O Exception bei repaint AWT, Swing, JavaFX & SWT 3
D Fragen zu Swing, paintComponent() und repaint AWT, Swing, JavaFX & SWT 6
Dit_ Zeilenmarkierung verschwindet nach repaint() AWT, Swing, JavaFX & SWT 12
A Swing Infinite repaint loop unterbrechen AWT, Swing, JavaFX & SWT 7
hdi Swing EDT macht kein repaint() AWT, Swing, JavaFX & SWT 2
F "Verrutschen" von Komponenten bei repaint() AWT, Swing, JavaFX & SWT 9

Ähnliche Java Themen

Neue Themen


Oben