tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
8
ZUGRIFFE
1336
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von starbuck86
    starbuck86 starbuck86 ist offline Mitglied Silber
    Registriert seit
    Sep 2008
    Beiträge
    54
    Hallo Community.

    Ich bin gerade dabei einen Server-Monitor in Java zu programmieren.
    In diesem Programm gibt es ein Hauptfenster mit 24 Buttons. Mit dem Klick auf einen dieser Buttons wird ein neues Fenster geöffnet mit wiederum zwischen 3 und 14 Buttons die in einem GridLayout alle untereinander angeordnet sind. Dazu muss ich jetzt sagen, dass diese Fenster eine variable Größe haben. Also die Buttons werden dynamisch erzeugt.

    Damit die Fenster nicht all zu viel Platz verschwenden möchte ich sie gerne "packen". Das ganze funktioniert ja mit der Methode > pack() < Allerdings werden die Fenster auch horizontal auf die kleinst mögliche Größe gepackt. Und das ist nicht das, was ich gerne hätte.

    Weiss jemand wie man so etwas umsetzen kann?
    Also:
    - vertikal variable Größe der Fenster
    - horizontal fixe Größe der Fenster

    Danke && Gruß
    Thomas
     

  2. #2
    Avatar von Matze
    Matze Matze ist offline Weltenwanderer
    Registriert seit
    Jul 2007
    Ort
    Die Welt
    Beiträge
    1.504
    Blog-Einträge
    7
    Moin!
    Hast du schon versucht eine Mindestgröße der Buttons zu setzen mit setMinimumSize(int, int) ?
     
    "... Jeder von uns ist Kunst... gezeichnet vom Leben" (Casper)

    "Sir?, we're sorrounded!"
    "Excellent, we can attack in any direction"

  3. #3
    Registriert seit
    Aug 2008
    Beiträge
    157
    kann man die Methode pack nicht überschreiben ?

    und vllt sowas hier bauen:
    Code java:
    1
    2
    3
    4
    5
    6
    7
    
    new JFrame(){
    public void pack(){
    int breite = getBreite(); //Was den genauen Methodennamen für Aktuellebreite nicht
    super.pack();
    setBreite(breite);
    }
    }

    oder ich hab deine frage stellung falsch verstanden =)

    mfg
     

  4. #4
    Avatar von starbuck86
    starbuck86 starbuck86 ist offline Mitglied Silber
    Registriert seit
    Sep 2008
    Beiträge
    54
    Stimmt. Probiers gleich mal aus.
    Ja er nimmt keine int-Werte in der Methode an.

    Habe nur folgendes gefunden:
    "public void setMinimumSize(Dimension minimumSize)"


    @Leroux, Du hast sie voll und ganz richtig verstanden. Dann werd ich das auch mal testen.
     

  5. #5
    Avatar von hammet
    hammet hammet ist offline himekishi
    Registriert seit
    Aug 2006
    Ort
    Bayern
    Beiträge
    334
    Ja wie schon erwähnt, pack() aufrufen und anschließend das JFrame wieder auf die gewünschte Breite setzen.

    Edit:
    Code java:
    1
    
    setMinimumSize(new Dimension(x,y));
    Geändert von hammet (30.09.08 um 10:27 Uhr)
     
    Handlanger des Dr. Ex1tus

    Ich kenne Matzes dunkles Geheimnis ! oO

    o
    L_/
    OL
    This is Schäuble. Copy Schäuble into your signature to help him on his way to Überwachungsstaat.

    Hallo Nuray!

  6. #6
    Avatar von Matze
    Matze Matze ist offline Weltenwanderer
    Registriert seit
    Jul 2007
    Ort
    Die Welt
    Beiträge
    1.504
    Blog-Einträge
    7
    Zitat Zitat von starbuck86 Beitrag anzeigen
    Habe nur folgendes gefunden:
    "public void setMinimumSize(Dimension minimumSize)"
    Oder hättest meinen Post lesen können -.-
     
    "... Jeder von uns ist Kunst... gezeichnet vom Leben" (Casper)

    "Sir?, we're sorrounded!"
    "Excellent, we can attack in any direction"

  7. #7
    Avatar von starbuck86
    starbuck86 starbuck86 ist offline Mitglied Silber
    Registriert seit
    Sep 2008
    Beiträge
    54
    Ja Matze, durch Deinen Post kam ich ja drauf. Aber das mit den 2 Integer-Werten als Übergabe hatte nicht funktioniert also hab ich die Methodendeklaration der API gepostet.

    Ist ja echt klasse hier. Bekommt man schnell GUTE Antworten.

    Danke mal an alle.
     

  8. #8
    Avatar von Matze
    Matze Matze ist offline Weltenwanderer
    Registriert seit
    Jul 2007
    Ort
    Die Welt
    Beiträge
    1.504
    Blog-Einträge
    7
    Ups, sorry, könnte schwören, dass das bei meinem alten treuen Java 1.3 geht

    Bitte wenn alles geklährte ist noch unten auf den "Erledigt"-Button drücken.
     
    "... Jeder von uns ist Kunst... gezeichnet vom Leben" (Casper)

    "Sir?, we're sorrounded!"
    "Excellent, we can attack in any direction"

  9. #9
    Avatar von starbuck86
    starbuck86 starbuck86 ist offline Mitglied Silber
    Registriert seit
    Sep 2008
    Beiträge
    54
    So nun nochmal als Abschluss.
    Habe beide Möglichkeiten ausprobiert.

    Variante a: Button-Größe
    Code java:
    1
    
    jbutton.setMinimumSize(new Dimension(50,50));
    Hat dem Button zwar eine Größe zugeordnet, aber mit der Methode pack() wurde das dann überschrieben.

    Variante b: pack() überschreiben
    Code java:
    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
    
    public window_sec01prod() throws IOException {
            
        String[] array = this.e_s01p();
            
        JButton[] buttons = new JButton[20];
            
        frame_01p.setSize(140,500);
        frame_01p.setLocation(100,100);
        frame_01p.setVisible(true);
        frame_01p.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
        frame_01p.addWindowListener(mywl2);
        frame_01p.add(panel);
        panel.setLayout(new GridLayout(0,1));
        
        for (int i=0; i<20; i++) {
            if (array[i] != null) {
                buttons[i] = new JButton(array[i]);
                panel.add(buttons[i]);
            }
        }
        this.pack();
        frame_01p.setResizable(false);
    }
     
    public void pack() {
        frame_01p.pack();
        int hoehe = frame_01p.getSize().height;
        frame_01p.setSize(140,hoehe);
    }
    Hiermit hats geklappt.

    Gruß
    Thomas
    Geändert von starbuck86 (30.09.08 um 10:55 Uhr)
     

Ähnliche Themen

  1. Fenstergröße anpassen
    Von Slazer im Forum C/C++
    Antworten: 9
    Letzter Beitrag: 19.01.08, 07:41
  2. Fenstergröße an Bild anpassen
    Von d-braun im Forum Javascript & Ajax
    Antworten: 9
    Letzter Beitrag: 26.07.06, 01:13
  3. Bild Fenstergröße anpassen
    Von andreas2000 im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 07.03.06, 20:55
  4. Hintergrundbild an Fenstergröße anpassen
    Von Riegel im Forum HTML & XHTML
    Antworten: 4
    Letzter Beitrag: 20.05.05, 16:56
  5. Fenstergröße anpassen
    Von uwee im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 14.01.05, 13:34