also ich will dass der mir wenn ich den Button diagramm1 drück das ganze neuzeichnet. naja ersma der code
als erstes ma den Code des Tabs in dem dann alles steht
so nun die beiden JPanels die ich adde und in denen dann Gezeichnet wird
also DiagrammZeichnung wird über den Konstruktor geladen. Klappt uach
aber nun soll der wenn ich den button drück das Bode diagramm reinklatschen
geht net
könnt ihr mir helfen`?
als erstes ma den Code des Tabs in dem dann alles steht
Code:
import javax.swing.*;
import javax.swing.border.TitledBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.ActionListener;
public class DiagrammeTab extends JPanel implements ItemListener, ActionListener
{
JPanel tab = new JPanel();
JButton buttomDiagramm1 = new JButton(new ImageIcon("img/Diagramm1.jpg"));
JButton buttomDiagramm2 = new JButton(new ImageIcon("img/Diagramm2.jpg"));
JButton buttomdiagramm3 = new JButton(new ImageIcon("img/Diagramm3.jpg"));
JPanel frame_l = new JPanel();
JPanel frame_r = new JPanel();
JPanel border_l = new JPanel(new GridLayout(1,1,0,0));
JPanel border_r = new JPanel(new GridLayout(3,1,0,0));
DiagrammZeichnung dz = new DiagrammZeichnung();
BodeDiagramm bd = new BodeDiagramm();
public DiagrammeTab()
{
tab.setBorder(new TitledBorder(""));
tab.setBackground(Color.white);
buttomDiagramm1.addActionListener(this);
buttomDiagramm2.addActionListener(this);
buttomdiagramm3.addItemListener(this);
border_r.add(buttomDiagramm1);
border_r.add(buttomDiagramm2);
border_r.add(buttomdiagramm3);
border_l.add(dz);
frame_l.setBackground(Color.white);
frame_r.setBackground(Color.white);
border_l.setPreferredSize(new Dimension(480,380));
border_r.setPreferredSize(new Dimension(200,380));
border_l.setBorder(new TitledBorder("gewählt"));
border_r.setBorder(new TitledBorder("Auswahl"));
border_l.setBackground(Color.white);
border_r.setBackground(Color.white);
tab.add(frame_l);
tab.add(frame_r);
frame_l.add(border_l, CENTER_ALIGNMENT);
frame_r.add(border_r, CENTER_ALIGNMENT);
this.add(tab, BorderLayout.CENTER);
}
public void itemStateChanged(ItemEvent e)
{
if(e.getSource() == buttomDiagramm1)
{
border_l.removeAll();
border_l.add(bd);
}
if(e.getSource() == buttomDiagramm2)
{
}
if(e.getSource() == buttomdiagramm3)
{
}
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == buttomDiagramm1)
{
border_l.removeAll();
border_l.add(bd);
}
}
}
so nun die beiden JPanels die ich adde und in denen dann Gezeichnet wird
Code:
import javax.swing.*;
import java.awt.*;
public class DiagrammZeichnung extends JPanel
{
JPanel Zeichnung = new JPanel();
public DiagrammZeichnung()
{
this.add(Zeichnung);
}
public void paint( Graphics g )
{
g.drawString( "Bitte ein Diagramm auswählen",160,170 );
}
}
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
public class BodeDiagramm extends JPanel implements ItemListener
{
JPanel Zeichnung = new JPanel();
public BodeDiagramm()
{
this.add(Zeichnung, BorderLayout.CENTER);
}
public void paint( Graphics g )
{
//RAHMEN
g.drawRect(20,15,420,315);
//WAAGERECHTE STRICHE
g.drawLine(125, 15, 125, 330);
g.drawLine(230, 15, 230, 330);
g.drawLine(335, 15, 335, 330);
//WAAGERECHTE ZWISCHENSTRICHE
//g.drawLine(pow(101,10),15,pow(10,10),435);
//g.drawRect(pow(10,10),15,1,420);
//SENKRECHTE STRICHE
//g.drawRect(20,120,420,105);
g.drawLine(20,((315/4)+20),440,((315/4)+20));
g.drawLine(20,((315/2)+20),440,((315/2)+20));
g.drawLine(20,(((315/4)*3)+20),440,(((315/4)*3)+20));
}
public void itemStateChanged(ItemEvent e)
{
}
}
also DiagrammZeichnung wird über den Konstruktor geladen. Klappt uach
aber nun soll der wenn ich den button drück das Bode diagramm reinklatschen
geht net
könnt ihr mir helfen`?