Gestaltung von JApplets

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo!
Ich habe Probleme bei der Gestaltung von JApplets. Nehmen wir an, ich will ein Applet
mit folgenden Komponenten entwerfen: zwei Jlabels nebeneinander, dann unten drei Buttons
und dann ganz unten eine Combobox. Ich schreibe folgende Methode:

public void formatierung() {
L1 = new JLabel("....");
L2 = new JLabel("....");
button1 = new JButton("....");
button2 = new JButton("....");
button3 = new Jbutton("....");
box = new JcomboBox("....");
hauptPanel = new Jpanel(); // 3 Panels
panel1=new JPanel();
panel2=new Jpanel();
Container konteiner = getContentPane(); //
konteiner.add(hauptPanel); // alles kommt in dem Panel
hauptPanel.setLayout(new GridLayout(3,1)); // drei Reien, eine Zeile
hauptPane.add(panel1);
hauptPane.add(panel2);
hauptPane.add(box);
......................................// hier panel1 mit zwei JLabels und panel2 mit 3 buttons
}

soweit so gut - jetzt kommt nur noch html:
<applet code="SehrgutaussehendeJApplet.class" width=30 height=900>
</applet>

Mein Problem ist: Welche Formatierungsmöglichkeiten habe ich? Jetzt ist die Box so groß
wie panel1 und 2. Wenn ich will, dass die Combobox nur 10px hoch ist und nicht 300px,.
dagegen die Buttons 600px hoch - was soll ich machen?

SetSize funktioniert nicht - das Applet macht was es will. Er verteilt immer die gleiche Höhe für
die drei Komponenten im hauptPanel.
 
G

Guest

Gast
Danke erstmal!
OK. Ich formuliere das genauer:

Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Twolabels extends JApplet {
	JPanel mainpanel;
	JLabel one, two;
  public void init() {
  	try {
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                labels();
            }
        });
    } catch (Exception e) {
        System.err.println("createGUI didn't successfully complete");
    }
  }
  public void labels() {				
	one = new JLabel("  50px",SwingConstants.LEFT);
	two = new JLabel("  150px",SwingConstants.LEFT);	
   	mainpanel = new JPanel();   	 	
    Container conteinr = getContentPane();
    conteinr.add(mainpanel);
    mainpanel.setLayout(new GridLayout(1,2,5,5));
    mainpanel.setBorder(BorderFactory.createRaisedBevelBorder());
    mainpanel.add(one);    
    mainpanel.add(two);
    one.setBorder(BorderFactory.createLoweredBevelBorder());
    two.setBorder(BorderFactory.createLoweredBevelBorder());      
 }
}
Code:
<html>
<head><title>JApplet</title></head>
<body>
<applet code="Twolabels.class" width=200 height=60>
</applet>
</br>
</body>
</html>

Was soll ich tun damit „Fenster2“ drei mal breiter als „Fenster“ 1 ist?
 

André Uhres

Top Contributor
Eine Möglichkeit wäre mit FlowLayout. Die Grösse der Panels legts du dann mit setPreferredSize fest.
Danach hängt die Anordnung von der Grösse des Applets ab: ist es gross(breit) genug,
dann erscheinen die beiden Panels nebeneinander, andernfalls untereinander.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Frage zum Aufbau eines JApplets Tools - Maven, Gradle, Ant & mehr 6

Ähnliche Java Themen

Neue Themen


Oben