jMenü scrollbar machen

JavaRentner

Aktives Mitglied
Hallo Wissende

Ich generiere ein JMenu basierend auf einem Ordner im Homeverzeichnis.
Java:
public class MyMenuFile extends JMenu {
    private static final long serialVersionUID = 1L;

    MyMenuFile(String text, ImageIcon ic, String ac, String name, Font fnt) {
        setOpaque(true);
        setFont(fnt);
        setText("<html>"+text+"</html>");
        setIcon(ic);
        setName(name);
        setActionCommand(ac);
       
    }
}

Darin werden alle Objekte (Ordner und Dateien) als JMenuItem geaddet.
Das habe ich hinbekommen...
Leider werden nur exakt soviele JMenuItems angezeigt, wie in der Höhe des Monitors platz haben...

Die JMenuItems (Einträge aus dem Pfad) haben eine höhe von 20px.
Wenn es jetzt mehr als 54 Objekte im Pfad (MenuItem) sind, sollte es doch möglich sein, das JMenu zu scrollen.

Bei MonitorHeight 1080 können nur 54 JMenuItem (Höhe 20px) angezeigt werden. (wegen Taskleise ev. etwas weniger)

Dieses Problem wurde hier schon mal behandelt, habe aber keine für mich verständliche Lösung gefunden.

Habe versucht eine abgeleitete Klasse von JMenu zu generieren in der ich ein:
JPanel menPanel = new JPanel(new BorderLayout(0,0);
geaddet habe.

Im NORTH - Bereich habe ich ein JLabel platziert das bei mouseEntered(...) nach oben scrollen sollte!
Äquivalent im SOUTH - Bereich ein JLabel das nach unten scrollen sollte.

Im CENTER - Bereich wollte ich eigentlich die JMenuItems adden.

Ein JMenuItem in den CENTER - Bereich zu legen, kriege ich nicht hin.
Vermute mal dass ich das JMenu extended habe... :confused:

Wäre wundervoll wenn mir Jemand erklären könnte, wie ich mein JMenu (scrollable) aufbauen müsste.
Vielen Dank!
 
Zuletzt bearbeitet:
Beste Antwort
✔️ Problem ist gelösst!!

Für Alle die das intressieren könnte: (alle Anderen einfach Ignorieren, Danke)
Habe eine eigene Klasse geschrieben:
(Das PopupMenu kann auch mit dem Mausrad gescrollt werden und bei einem TouchScreen nach oben/unten gestossen werden)
Java:
import java.awt.Color;
import java.awt.Component;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import java.util.ArrayList;

import javax.swing.border.BevelBorder;

/**
 * Typ <b><font color=#855200>class</font></b> (<i><b>Name: <font color=green>MyMenuScroller</font></b></i>)
 * @author <b><font color=blue>EDV-R&uuml;egg</font></b>, <i><b><font...

JavaRentner

Aktives Mitglied
Ich denke, dass JMenu keine gute Wahl für die Darstellung einer Ordner Struktur ist. Was hindert dich daran dafür JTree zu verwenden?
Habe ein TrayIcon gebastelt...
welches aus einer Datenbank alle vom User erfassten Einträge enthält.
(funktioniert echt gut)

Wenn ein Eintrag ein Pfad zu einem Ordner ist, z.B. .../Dokumente, dann kann das (mehr als anzeigbare) Objekte enthalten.
Der Inhalt des Ordners wird in einem neuen JMenu aufgelistet!!! Und dieses sollte jetzt scrollbar sein, begrenzt auf sagen wir mal 800px Höhe,
der Rest sollte iwie scrollbar sein.

Wie baue ich ein JTree innerhalb eines JMenu auf???
Vielen Dank für ein Lösung.

die beste Loesung vermutlich MenuScroller
wäre schon die richtige Lösung!

Versuche gerade das irgendwie umzusetzen... :(
 
Zuletzt bearbeitet:

Robert Zenz

Top Contributor
Ich weisz ehrlich gesagt nicht mehr ob man beliebige `JComponent`s in ein Menue bekommt. Du koenntest schummeln und beim Klick auf das Tray-Icon einen JFrame aufmachen (ohne Fensterdekoration) welcher grob an der Stelle des Tray-Icons ist, und bei Fokusverlust wieder zugeht.
 

JavaRentner

Aktives Mitglied
@Robert Zenz
Ich weisz ehrlich gesagt nicht mehr ob man beliebige `JComponent`s in ein Menue bekommt.
Haste Recht!!
Bis jetzt konnte ich nur entweder ein JMenu oder ein JMenuItem adden.

Jeder gelistete Eintrag erhält ein MouseListener!

Wenn ich als JMenu ein Ordner eintrage, ist der Name des JMenu gleich OrdnerName.
Fahre ich mit der Maus auf JMenu(OrdnerName), wird ein neuer JDialog geöffnet (Position richtet sich nach dem JMenu).

Das Problem ist, wenn es mehr Objekte im Ordner (OrdnerName) hat als vertikal am Bildschirm gelistet werden kann
(abhängig der definierten Schriftgrösse) , wäre es hübsch, dass das gescrollt werden könnte.

Es funktioniert alles Perfekt, bis auf die Übergrösse bei zu vielen Objekten (Ordner / Dateien) in einem Ordner.

Mein Wunsch wäre es das JMenu in der Höhe zu beschränken mit einer Möglichkeit den Überlauf zu scrollen...

Ich bin noch am Basteln....
Vielen Dank
 

JavaRentner

Aktives Mitglied
Guten Tag
Konnte jetzt den implementieren und auch die Position und Grösse des JMenu.getPopupMenu passt jetzt.

Mein Problem:
Wie löse ich jetzt das Scrollen aus?
Finde keinen Einstieg wo ich beim drüberfahren resp. mouesPressed auf das gepaintete Objekt das Scrollen (timer) auslösen kann.

Es passiert rein gar nichts, wenn ich mit mouseEntered resp. mousePressed auf dem gepainteten Objekt bin.

Vielen Dank.
 

JavaRentner

Aktives Mitglied
✔️ Problem ist gelösst!!

Für Alle die das intressieren könnte: (alle Anderen einfach Ignorieren, Danke)
Habe eine eigene Klasse geschrieben:
(Das PopupMenu kann auch mit dem Mausrad gescrollt werden und bei einem TouchScreen nach oben/unten gestossen werden)
Java:
import java.awt.Color;
import java.awt.Component;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import java.util.ArrayList;

import javax.swing.border.BevelBorder;

/**
 * Typ <b><font color=#855200>class</font></b> (<i><b>Name: <font color=green>MyMenuScroller</font></b></i>)
 * @author <b><font color=blue>EDV-R&uuml;egg</font></b>, <i><b><font color=brown>Richard R&uuml;egg</font></b></i><br>Kontakt:<ul><li>kontakt@edv-rueegg.ch</li></ul><hr size=1 color=blue>
 */
public class MyMenuScroller extends ArrayList<Component> {

    private static final long serialVersionUID = 1L;
   
    int visiRows;
    int aktIndex;
    int intervalStep;
    UpDown upItem;
    UpDown downItem;
   
    /** <b><font color='blue'>aktMFile</font></b> Das aktuelle JMenu */
    MyMenuFile aktMFile;
   
    boolean doScroll = false;
    private static boolean canScroll = false;
   
    /**
     * Erg&auml;nzt ein JMenu (<b><i>MyMenuFile</i></b>) mit Scrollm&ouml;glichkeiten.
     * @param menu Das JMenu dessen Inhalt ggF. gescrollt werden soll.
     * @param visibleRows anzahl Components die angezeigt werden sollen.
     * @param interval scrollgeschwindigkeit (Millisekunden)
     */
    public MyMenuScroller(MyMenuFile menu, int visibleRows, int interval) {
        super();
        aktMFile = menu;
        visiRows = visibleRows;
        intervalStep = interval;
//        menus.getPopupMenu().setName("popup"+name);
    }
   
    /**
     * Addet die ersten <b><font color='blue'>visibleRows</font></b> Components
     * @param components ArrayList der Komponenten.
     * @param addIndex in der Regel <b><font color='blue'>0</font></b>
     * @apiNote
     * Wenn <b><font color='blue'>canScroll</font></b> = <b>true</b>, wird<br>ein <b>MouseWheelListener</b> angeh&auml;ngt!
     * <pre>
     * <b><font color='blue'>canScroll</font></b> muss nach der Instanziierung von <b><font color='blue'>MyMenuScroller</font></b> in der
     * Aufrufenden Klasse getsetzt werden (<i><b>setScrollable(true)</b></i>) <b>bevor</b>
     * diese Methode aufgerufen wird!
     * </pre>
     */
    public void addArray(ArrayList<Component> components, int addIndex) {
        super.addAll(addIndex, components);
        aktMFile.removeAll();
        setAktMFile();
        if(canScroll) {
            aktMFile.getPopupMenu().addMouseWheelListener(new MouseWheelListener() {
                @Override
                public void mouseWheelMoved(MouseWheelEvent e) {
                    if(e.getWheelRotation() > 0) {
                        downOne();
                    }
                    else {
                        upOne();
                    }
                }
            });
        }
    }
    //-----------------------------------------------------------------------------------------------
    /**
     * F&uuml;gt dieser <b>ArrayList&lt;Component&gt;</b> einen weiteren Eintrag hinzu.
     * @param component Ein weiteres <b><i>JMenu</i></b> oder ein <b><i>JMenuItem</i></b>.
     */
    public void addeNeu(Component component) {
        super.add(component);
    }
    //-----------------------------------------------------------------------------------------------
   
    /**
     * @param scrollable <b>true</b> wenn gescrollt werden kann, andernfalls <b>false</b>!
     * <ul>Muss immer auf <b>true</b> resp. <b>false</b> in der Aufrufenden Klasse gesetzt werden!
     */
    public void setScrollable(boolean scrollable) {
        canScroll = scrollable;
    }
    //-----------------------------------------------------------------------------------------------
   
    //🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️ JMenu fuellen 🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭
    /**
     * Erstellt und verwaltet das <b><font color='blue'>aktMFile</font></b>
     */
    void setAktMFile() {
        upItem = new UpDown(true, "scrollUP");
        upItem.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseEntered(MouseEvent e) {
                TrayDialog.closeAllRekursiv(aktMFile, false);
                if(upItem.istEnabled()) {
                    upItem.setBackground(new Color(218, 218, 218));
                }
            }
            @Override
            public void mouseExited(MouseEvent e) {
                upItem.setBackground(upItem.bgDefault);
            }
            //-----------------------------------------------------------------------------------------------
           
            @Override
            public void mousePressed(MouseEvent e) {
                if(upItem.isEnabled) {
                    if(e.getClickCount() > 1) {
                        e.consume();
                        return;
                    }
                    upItem.setBorder(new BevelBorder(BevelBorder.LOWERED));
                    doScroll = true;
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            if(aktIndex > 0) {
                                for(int i=size()-1; i>0; i--) {
                                    if(!doScroll) {        // || aktIndex >= (totalItem-scrollCount)
                                        e.consume();
                                        break;
                                    }
                                    int neuItem = aktIndex-1;
                                    try {
                                        Component aktM = get(neuItem);
                                        aktMFile.remove(visiRows);
                                        aktMFile.add(aktM, 1);
                                        if(neuItem < 1) {
                                            doScroll = false;
                                            upItem.setEnable(false);
                                            upItem.setBorder(new BevelBorder(BevelBorder.RAISED));
                                            e.consume();
                                        }
                                        try {
                                            Thread.sleep(intervalStep);
                                        } catch (Exception e2) {}
                                        aktIndex--;
                                        if(aktIndex < size()-1) {
                                            downItem.setEnable(true);
                                        }
                                    } catch (Exception e2) {
                                        e.consume();
                                        doScroll = false;
                                        upItem.setEnable(false);
                                        upItem.setBorder(new BevelBorder(BevelBorder.RAISED));
                                        break;
                                    }
                                }
                            }
                            else {
                                doScroll = false;
                                e.consume();
                                upItem.setEnabled(false);
                                upItem.setBorder(new BevelBorder(BevelBorder.RAISED));
                            }
                        }
                    }).start();
                }
            }
            @Override
            public void mouseReleased(MouseEvent e) {
                doScroll = false;
                upItem.setBorder(new BevelBorder(BevelBorder.RAISED));
            }
        });
        aktMFile.add(upItem);
        if(!canScroll) {
            upItem.setVisible(false);
        }
       
        //🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️ effektiv LADEN der ersten visiRows (30) 🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭
        int bis = size() > visiRows ? visiRows:size();
        for(int i=0; i<bis; i++) {
            aktMFile.add(get(i));
        }
        //🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️ LADEN der ersten 30 Components fertig 🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭️🇨🇭
       
        downItem = new UpDown(false, "scrollDown");
        downItem.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseEntered(MouseEvent e) {
                TrayDialog.closeAllRekursiv(aktMFile, false);
                if(downItem.istEnabled()) {
                    downItem.setBackground(new Color(218, 218, 218));
                }
            }
            @Override
            public void mouseExited(MouseEvent e) {
                downItem.setBackground(downItem.bgDefault);
            }
            //-----------------------------------------------------------------------------------------------
           
            @Override
            public void mousePressed(MouseEvent e) {
                if(downItem.isEnabled) {
                    if(e.getClickCount() > 1) {
                        e.consume();
                        return;
                    }
                    downItem.setBorder(new BevelBorder(BevelBorder.LOWERED));
                    doScroll = true;
                   
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            if(aktIndex < size()) {
                                for(int i=1; i<size(); i++) {
                                    if(!doScroll) {        // || aktIndex >= (totalItem-scrollCount)
                                        e.consume();
                                        break;
                                    }
                                   
                                    int neuItem = aktIndex+visiRows;
                                   
                                    try {
                                        Component aktM = get(neuItem);
                                        aktMFile.remove(1);
                                        aktMFile.add(aktM, visiRows);
                                       
                                        if(neuItem >= size()-1) {
                                            doScroll = false;
                                            downItem.setEnable(false);
                                            downItem.setBorder(new BevelBorder(BevelBorder.RAISED));
                                            e.consume();
                                        }
                                        try {
                                            Thread.sleep(intervalStep);
                                        } catch (Exception e2) {}
                                        aktIndex++;
                                        if(aktIndex > 0) {
                                            upItem.setEnable(true);
                                        }
                                    } catch (Exception e2) {
                                        e.consume();
                                        doScroll = false;
                                        downItem.setEnable(false);
                                        downItem.setBorder(new BevelBorder(BevelBorder.RAISED));
                                        break;
                                    }
                                }
                            }
                            else {
                                doScroll = false;
                                e.consume();
                                downItem.setEnabled(false);
                                downItem.setBorder(new BevelBorder(BevelBorder.RAISED));
                            }
                        }
                    }).start();
                }
            }
            @Override
            public void mouseReleased(MouseEvent e) {
                doScroll = false;
                downItem.setBorder(new BevelBorder(BevelBorder.RAISED));
            }
        });
        aktMFile.add(downItem);
        if(!canScroll) {
            downItem.setVisible(false);
        }
    }
    //-----------------------------------------------------------------------------------------------
   
    /**
     * MausRad scroll nach OBEN
     */
    void upOne() {
        try {
            if(aktIndex > 0) {
                aktIndex--;
                Component aktM = get(aktIndex);
                aktMFile.remove(visiRows);
                aktMFile.add(aktM, 1);
                aktMFile.updateUI();
                if(aktIndex <= 0) {
                    upItem.setEnable(false);
                }
                if(aktIndex < (size()-visiRows)) {
                    downItem.setEnable(true);
                }
            }
        } catch (Exception e) {}
    }
    //-----------------------------------------------------------------------------------------------
   
    /**
     * MausRad scroll nach UNTEN
     */
    void downOne() {
        try {
            if(aktIndex < size()) {
                Component aktM = get(aktIndex+visiRows);
                aktMFile.remove(1);
                aktMFile.add(aktM, (visiRows));
                aktMFile.updateUI();
                aktIndex++;
                if(aktIndex >= (size()-visiRows)) {
                    downItem.setEnable(false);
                }
                if(aktIndex > 0) {
                    upItem.setEnable(true);
                }
            }
        } catch (Exception e) {}
    }
}

Ich hoffe ich habe es verständlich genug Kommentiert.
Vielen Dank.

PS.
Für alle die jetzt nicht genau wissen, wie das in der aufrufenden Klasse eingebunden wird, gebe ich gerne ein paar Anhaltspunkte.
 
Zuletzt bearbeitet:
Beste Antwort

Oneixee5

Top Contributor
Warum erbt die Klasse von ArrayList und überschreibt keine einzige Methode davon?

Das ist ein absolutes NoGo:
Java:
} catch (Exception e) {}
 

JavaRentner

Aktives Mitglied
Vielen Dank und ja es ist ein NoGo!
Sorry habe im eifer des Gefechts (alle überflüssigen Kommentare zu löschen)
Diese leider gleich mitgelöscht!

Bei mir habe ich die exeptions-Auswürfe wieder eingesetzt.
Bitte um entschuldigung und wenn man das hier wieder einsetzen könnte? Vielen Dank.

Warum erbt die Klasse von ArrayList und überschreibt keine einzige Methode davon?
Für mich klang das iwie einfacher.
Durchlaufe ein File[]-Array solange bis n den Wert maxShowItem überschritten hat und
verlasse dann die Schleife um in eineren weiteren Methode innerhalb eines Threads die restlichen Einträge vom File[]-Array dem MyMenuScroller.addNeu(Component) anzuhängen.

Der für mich wesentliche Vorteil sollte sein, dass ich bei mehr als maxShowItem nicht so lange auf das Laden der Componenten warten muss, bis mir etwas angezeigt wird.

Auslösen des anzeigens vom PopuMenu des JMenu, bei mouseEntered().

Mein Problem war, dass mit new MyMenuScroller(...) die deklarierte ArrayList<Component>
nicht leer war. Also hab ich es mit extends versucht und so war es dann immer leer.

Bitte jetzt nich meckern... Bin kein Profi und das kann man garantiert besser lösen.
Aber so wie ich es jetzt gebaut habe, konnte ich auch das Scrollen mit der Maus / TouchScreen umsetzten,
und die Wartezeit bis zum aufpopen verkürzen.

PS.
Wenn ich jetzt einen Ordner, eine Datei speichere sollte diese auch angezeigt werden.
Darum lade ich bei JMenu welche den Inhalt aus einem Pfad beziehen das ganze jedesmal neu bei mouseEntered()
und beim Schliessen werden diese wieder geleert. (dispose)

Was ich auch festgestllt habe, dass ich auf diese Weise einen nicht so aufgeblähten Arbeitspeicher dieses Prozesses habe.
 
Zuletzt bearbeitet:


Schreibe deine Antwort... und nutze den </> Button, wenn du Code posten möchtest...
Ähnliche Java Themen
  Titel Forum Antworten Datum
MJannek Scrollbar funktioniert nicht AWT, Swing, JavaFX & SWT 10
CptK Ordentlicher Code & Panel ab bestimmter Komponentenzahl scrollbar machen AWT, Swing, JavaFX & SWT 12
ralfb1105 jTextArea Scrollbar hinzufügen - mit Jigloo erstellt AWT, Swing, JavaFX & SWT 7
G Wie Scrollbar einfügen? AWT, Swing, JavaFX & SWT 1
A Swing Panel mit ScrollBar AWT, Swing, JavaFX & SWT 7
M JavaFX TextArea disabled - ScrollBar enabled AWT, Swing, JavaFX & SWT 3
H JavaFX Abstand rechts zur scrollbar AWT, Swing, JavaFX & SWT 1
I Swing Scrollbar AWT, Swing, JavaFX & SWT 2
W Scrollbar in Registerkarte AWT, Swing, JavaFX & SWT 1
M eigene horizontale Scrollbar AWT, Swing, JavaFX & SWT 1
M JTable horizontale scrollbar löschen AWT, Swing, JavaFX & SWT 3
G Scrollbar AWT, Swing, JavaFX & SWT 13
G Scrollbar für das Fenster einfügen AWT, Swing, JavaFX & SWT 3
M Swing JTextArea mit ScrollBar AWT, Swing, JavaFX & SWT 9
A JScrollPane - ScrollBar Buttongröße verändern AWT, Swing, JavaFX & SWT 1
A Scrollbar gestalten AWT, Swing, JavaFX & SWT 2
E JavaFX ScrollBar in TableView bei Column Resize AWT, Swing, JavaFX & SWT 2
T Swing JScrollPane Farbe der Scrollbar AWT, Swing, JavaFX & SWT 3
B Export eines Panel mit ScrollBar AWT, Swing, JavaFX & SWT 4
5 Scrollbar AWT, Swing, JavaFX & SWT 4
M Swing JTextPane + Scrollbar = Fragen AWT, Swing, JavaFX & SWT 15
H Swing JTextPane hat unästhetisches Scrollbar AWT, Swing, JavaFX & SWT 3
M Horizontal Scrollbar wird ignoriert AWT, Swing, JavaFX & SWT 10
M Swing Scrollbar im JFrame (JPanel?) AWT, Swing, JavaFX & SWT 6
W jTable Scrollbar Problem AWT, Swing, JavaFX & SWT 2
A Swing JPanel in JScrollBar scrollbar machen AWT, Swing, JavaFX & SWT 4
M SWT Table disabled und Scrollbar enabled AWT, Swing, JavaFX & SWT 11
P Scrollbar JTextArea AWT, Swing, JavaFX & SWT 23
S SWT GridLayout scrollbar machen? AWT, Swing, JavaFX & SWT 7
0 2D-Grafik Screenshot von ScrollBar-Inhalt AWT, Swing, JavaFX & SWT 2
D JList Scrollbar machen geht nicht AWT, Swing, JavaFX & SWT 4
D Scrollbar für Tabelle AWT, Swing, JavaFX & SWT 2
J Beliebtes Problem: Scrollbar in JTextArea AWT, Swing, JavaFX & SWT 4
S SWT ScrollBar Bug AWT, Swing, JavaFX & SWT 5
B GridLayout und scrollbar AWT, Swing, JavaFX & SWT 5
L Scrollbar übermalt AWT, Swing, JavaFX & SWT 2
H JList in JScrollPane -> ScrollBar ans Ende setzen AWT, Swing, JavaFX & SWT 5
M SWT keine Scrollbar bei widgets.List und GridLayout AWT, Swing, JavaFX & SWT 2
N Swing JTable Überschrift ohen scrollbar? AWT, Swing, JavaFX & SWT 2
R Scrollbar nur ohne STRG AWT, Swing, JavaFX & SWT 4
D Swing Spaltenköpfe verschieben sich nicht mit, wenn man an horizontaler Scrollbar zieht AWT, Swing, JavaFX & SWT 9
A SWT Table hat keine Scrollbar AWT, Swing, JavaFX & SWT 12
P JTextbox mit Scrollbar AWT, Swing, JavaFX & SWT 6
Roumeo Swing jTable mit Scrollbar AWT, Swing, JavaFX & SWT 13
D Swing [Erledigt]Panel mit ScrollBar , anpassbare Größe AWT, Swing, JavaFX & SWT 15
velocity Swing JList Scrollbar passt sich an AWT, Swing, JavaFX & SWT 4
S Scrollbar in einem JTabbedPane AWT, Swing, JavaFX & SWT 4
slawaweis JXTreeTable, jede Spalte einzeln scrollbar machen? AWT, Swing, JavaFX & SWT 2
Spot84 scrollbar die linksbündig angezeigt wird nur anzeigen wenn sie gebraucht wird AWT, Swing, JavaFX & SWT 5
K Größe einer Scrollbar im Dialogfenster ändern AWT, Swing, JavaFX & SWT 2
S Seltsam: SWT Table zeigt keine Scrollbar an AWT, Swing, JavaFX & SWT 12
T JList ScrollBar AWT, Swing, JavaFX & SWT 2
T ScrollBar aus ScrollPane verstecken AWT, Swing, JavaFX & SWT 2
J JList ohne vertikale Scrollbar AWT, Swing, JavaFX & SWT 3
M Scrollbar anpassen (Position) AWT, Swing, JavaFX & SWT 6
T Scrollbar wird nicht angezeigt - aber warum? AWT, Swing, JavaFX & SWT 3
O ScrollBar.setValue(int value); ? AWT, Swing, JavaFX & SWT 3
A JTable Header + ScrollBar AWT, Swing, JavaFX & SWT 4
N eine Zeichnung scrollbar machen AWT, Swing, JavaFX & SWT 4
DeeDee0815 JDesktopPane scrollbar AWT, Swing, JavaFX & SWT 2
ModellbahnerTT Problem mit Scrollbar AWT, Swing, JavaFX & SWT 10
S JTextArea soll mit Scrollbar ausgestattet sein AWT, Swing, JavaFX & SWT 4
Tom299 JScrollPane(JTextArea) Scrollbar soll am Anfang stehen AWT, Swing, JavaFX & SWT 2
S ScrollBar, bitte helft mir! AWT, Swing, JavaFX & SWT 9
G ScrollBar mit Frame verbinden? AWT, Swing, JavaFX & SWT 8
G Scrollbar hinzufügen AWT, Swing, JavaFX & SWT 10
C Grafikkomponente und Scrollbar AWT, Swing, JavaFX & SWT 5
N Scrollbar zu einem Dialog hinzufügen AWT, Swing, JavaFX & SWT 4
M Scrollbar AWT, Swing, JavaFX & SWT 4
L scrollbar von rot nach greun AWT, Swing, JavaFX & SWT 2
L Mehrere Scrollbar objekte miteinander verbinden AWT, Swing, JavaFX & SWT 3
G Wieso wird meine Scrollbar nicht angezeigt? AWT, Swing, JavaFX & SWT 3
M Scrollbar AWT, Swing, JavaFX & SWT 1
W Rat zur GUI - Scrollbar (SWT) AWT, Swing, JavaFX & SWT 2
A SWT: Group Scrollbar machen. AWT, Swing, JavaFX & SWT 5
G Scrollbar größe regeln AWT, Swing, JavaFX & SWT 18
A vertikale Scrollbar AWT, Swing, JavaFX & SWT 6
lhein Breite der Scrollbar in einer Combobox ändern AWT, Swing, JavaFX & SWT 5
K Mouse Events der Scrollbar/pane AWT, Swing, JavaFX & SWT 2
S JTextArea mit Scrollbar,append Text mit Fokus? AWT, Swing, JavaFX & SWT 5
A Update von Frameinhalt und Scrollbar AWT, Swing, JavaFX & SWT 11
M JTextPane mit ScrollBar AWT, Swing, JavaFX & SWT 5
K Scrollbar funzt net :-/ AWT, Swing, JavaFX & SWT 4
T JScrollPane Scrollbar-Position AWT, Swing, JavaFX & SWT 2
R JScrollPane die ScrollBar manipulieren ? AWT, Swing, JavaFX & SWT 3
S keine ScrollBar AWT, Swing, JavaFX & SWT 15
lin Startposition einer ScrollBar AWT, Swing, JavaFX & SWT 2
S scrollbar AWT, Swing, JavaFX & SWT 2
D JList ohne Scrollbar-ich weiss es ist durchgelutscht,aber. AWT, Swing, JavaFX & SWT 3
G Bei JScrollpane statt Scrollbar eine Vorschau verwenden AWT, Swing, JavaFX & SWT 3
B einzelne Zellen scrollbar machen innerhalb einer Tabelle AWT, Swing, JavaFX & SWT 3
javasdann Vertical ScrollBar in JTable verfälscht anzeigen. AWT, Swing, JavaFX & SWT 12
D Scrollbar AWT, Swing, JavaFX & SWT 6
Student JTable - eine fixe Spalte, der Rest scrollbar AWT, Swing, JavaFX & SWT 18
P Scrollbar/Pane auch mit negativen x,y - Werten AWT, Swing, JavaFX & SWT 2
R Wert von ScrollBar ausgeben AWT, Swing, JavaFX & SWT 7
M Scrollbar: Scrollbalken versetzen AWT, Swing, JavaFX & SWT 2
L JTextArea Scrollbar-Problem! AWT, Swing, JavaFX & SWT 2
chik Scrollbar AWT, Swing, JavaFX & SWT 26
L Probleme mit Scrollbar und LayoutManager AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben