1.Klasse: Hier wird
in der actionPerformed Methode weiter unten im code aufgerufen!
2.Klasse: Hier wurde die Klasse konstruiert:
Warum verhält sich das kleine mywindow nicht modal zu dem JFrame der in der 1. Klasse zuerst aufgerufen wird, danach auf button druck wird das obige:
ausgeführt und das mywindow ist sichtbar aber eben nicht model??
Code:
MyDialog mywindow = new MyDialog(Fenster);
in der actionPerformed Methode weiter unten im code aufgerufen!
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.border.*;
import javax.swing.WindowConstants;
import javax.swing.filechooser.FileFilter;
import javax.swing.ButtonGroup.*;
import java.io.*;
import java.text.*;
import java.util.Date;
import javax.swing.plaf.basic.BasicComboBoxRenderer;
import javax.swing.border.Border;
import javax.swing.filechooser.*;
import java.util.*;
import java.util.StringTokenizer;
import java.util.Arrays;
public class MainWindow extends JFrame
{
public MainWindow(){
super("Kaufmannsrechnung 2008");
UIManager.put("swing.boldMetal", Boolean.FALSE);
JTabbedPane jtp = new JTabbedPane();
RechnungPanel RP = new RechnungPanel();
jtp.addTab("<html><font size=5>Rechnungen schreiben</font size></html>", RP);
add(jtp);
}
class RechnungPanel extends JPanel implements ActionListener
{
JLabel informationLB = new JLabel("<html>[b]Produkt information:[/b]</html>");
JButton buttonRechnung = new JButton("<html>Rechnung schreiben
</html>");
public RechnungPanel()
{
setLayout(null);
add(buttonRechnung);
buttonRechnung.setBounds(845,0,144,64);
buttonRechnung.addActionListener(this);
} //................................. KONSTRUKTOR ENDE ............................................ //
public void actionPerformed(ActionEvent e)
{
if(e.getSource().equals(buttonRechnung))
{
MyDialog mywindow = new MyDialog(Fenster);
}
}
}
public static void main(String args[])
{
MainWindow Fenster = new MainWindow();
Fenster.setSize(900,650);
Fenster.setLocationRelativeTo(null);
Fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Fenster.setResizable(false);
Fenster.setVisible(true);
}
}
2.Klasse: Hier wurde die Klasse konstruiert:
Code:
import javax.swing.*;
import org.jvnet.substance.SubstanceLookAndFeel;
import org.jvnet.substance.button.ClassicButtonShaper;
import org.jvnet.substance.painter.WaveGradientPainter;
import org.jvnet.substance.theme.SubstanceAquaTheme;
public class MyDialog extends JDialog
{
static final long serialVersionUID = 1L;
public MyDialog()
{
SubstanceLookAndFeel slnf = new SubstanceLookAndFeel();
SubstanceLookAndFeel.setCurrentTheme(new SubstanceAquaTheme());
SubstanceLookAndFeel.setCurrentButtonShaper(new ClassicButtonShaper());
SubstanceLookAndFeel.setCurrentGradientPainter(new WaveGradientPainter());
try
{
UIManager.setLookAndFeel(slnf);
JDialog.setDefaultLookAndFeelDecorated(true);
}
catch (Exception b)
{
b.printStackTrace();
}
this.setSize(300,300);
this.setLocationRelativeTo(null);
this.setVisible(true);
this.setModal(true);
}
}
Warum verhält sich das kleine mywindow nicht modal zu dem JFrame der in der 1. Klasse zuerst aufgerufen wird, danach auf button druck wird das obige:
Code:
MyDialog mywindow = new MyDialog();