Z
ztiel
Gast
Hi
ich möchte gerne die Anwendung in zwei Bereiche aufteilen einmal in den oberen Bereich in dem gezeichnet wird mit der Größe 600 x 400 und der untere Bereich der gerade max. so groß sein soll wie die Komponenten. Außerdem sollen die JLabel im rechten Bereich nur so vie Platz bekommen wie nötig und nicht die Hälfte.
Am besten hat bis jetzt das funktioniert.
Das Frame bekommt ein GridLayout(2,1,0,0) dem oberen Teil kommt das JPanel in dem gezeichnet wird und im Unteren ein weiteres GridLayout(2,2,0,0) mit JPanel in dem die 4 Komponenten angeordnent sind.
Welche Layouts muß ich nutzen?
Ciao
ich möchte gerne die Anwendung in zwei Bereiche aufteilen einmal in den oberen Bereich in dem gezeichnet wird mit der Größe 600 x 400 und der untere Bereich der gerade max. so groß sein soll wie die Komponenten. Außerdem sollen die JLabel im rechten Bereich nur so vie Platz bekommen wie nötig und nicht die Hälfte.
Am besten hat bis jetzt das funktioniert.
Das Frame bekommt ein GridLayout(2,1,0,0) dem oberen Teil kommt das JPanel in dem gezeichnet wird und im Unteren ein weiteres GridLayout(2,2,0,0) mit JPanel in dem die 4 Komponenten angeordnent sind.
Welche Layouts muß ich nutzen?
Ciao
Java:
package desktop;
public class Start{
public static void main(String[] args) {
Oberflaeche mal = new Oberflaeche();
}
}
Java:
package desktop;
import java.awt.*;
import javax.swing.*;
public class Oberflaeche extends JFrame{
JPanel eingabe = new JPanel();
JSlider gegen = new JSlider(SwingConstants.HORIZONTAL,0,50,20);
JLabel lgegen = new JLabel("fff");
JSlider brenn = new JSlider(SwingConstants.HORIZONTAL,0,50,20);
JLabel lbrenn = new JLabel("ddd");
public Oberflaeche(){
super();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("Abbildungsgleichung");
this.setLocation(300, 100);
this.setLayout(new GridLayout(2,1,0,0));
eingabe.setLayout(new GridLayout(2,1,0,0));
eingabe.add(gegen);
eingabe.add(lgegen);
eingabe.add(brenn);
eingabe.add(lbrenn);
Malen ma = new Malen();
ma.setPreferredSize(new Dimension(600,400));
this.add(ma);
this.add(eingabe);
this.pack();
this.setVisible(true);
}
}
Java:
package desktop;
import java.awt.*;
import javax.swing.*;
public class Malen extends JPanel{
public void paintComponent( Graphics g ) {
super.paintComponents(g);
Graphics2D g2d = (Graphics2D)g;
g2d.setStroke(new BasicStroke (5));
g2d.setColor(Color.red);
g2d.drawLine(30, this.getHeight()/2, this.getWidth()-30, this.getHeight()/2);
g2d.setStroke(new BasicStroke (5));
g2d.setColor(Color.blue);
g2d.drawLine(this.getWidth()/2, 50, this.getWidth()/2, this.getHeight()-50);
}
}