public class InternalFrameDemo extends JFrame
{
public InternalFrameDemo()
{
final JDesktopPane dPane=new JDesktopPane();
setContentPane(dPane);
JMenuBar menuBar=new JMenuBar();
JMenu menu = new JMenu("Add new TestFrame");
menuBar.add(menu);
JMenuItem newTestFrame = new JMenuItem(new AbstractAction("save") {
public void actionPerformed(ActionEvent e)
{
JInternalFrame frame = new JInternalFrame("My Internal Frame",true,true);
frame.add(new JLabel(""+Math.random()));
frame.setVisible(true);
frame.setSize(200,200);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
dPane.add(frame);
}
});
menu.add(newTestFrame);
setJMenuBar(menuBar);
}
public static void main(String[] args)
{
InternalFrameDemo d = new InternalFrameDemo();
d.setSize(500,500);
d.setVisible(true);
d.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
public class WaWi extends JFrame{
private static final long serialVersionUID = 1L;
public WaWi(String title) {
setTitle(title);
}
static WaWi w;
static ImageIcon hintergrund;
static JDesktopPane desktop;
static String Kunde;
static KundenAuswahl kundenauswahl;
static Kundenübersicht kundenübersicht;
public static void main(String[] args) {
w=new WaWi("Müritz-Comp. GmbH - Warenwirtschaft | by TINO REICHEL");
Image MCWico=java.awt.Toolkit.getDefaultToolkit().getImage("./bilder/MCW.jpg");
hintergrund=new ImageIcon("./bilder/logo_mcw.jpg");
desktop=new JDesktopPane() {
private static final long serialVersionUID = 1L;
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(hintergrund.getImage(),0,0,this);
}
};
desktop.setDesktopManager(new DefaultDesktopManager());
w.setIconImage(MCWico);
try{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}catch(Exception e){ e.printStackTrace(); }
w.setContentPane(desktop);
//Menü
//Font menuFont=new Font("",0,13);
JMenuBar menu=new JMenuBar();
//Bewegung
JMenu bewegung=new JMenu("Bewegung");
bewegung.setMnemonic('B');
//bewegung.setFont(menuFont);
menu.add(bewegung);
//RECHNUNG
JMenu re=new JMenu("Rechnung");
//re.setFont(menuFont);
JMenu reVK=new JMenu("Verkauf");
//reVK.setFont(menuFont);
JMenuItem reAnlegen=new JMenuItem("Anlegen");
reAnlegen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
kundenauswahl = new KundenAuswahl("Bitte Kunden auswählen");
kundenauswahl.addWindowListener(new WindowAdapter() {
public void windowClosed(WindowEvent arg0) {
System.out.println("mu");
int Kunden_Nr=kundenauswahl.getKunde();
System.out.println("1");
if(Kunden_Nr>=0){
Rechnung rechnung=new Rechnung();
kundenübersicht=new Kundenübersicht();
BelegDesign bd=new BelegDesign(desktop, Kunden_Nr, kundenübersicht, rechnung);
desktop.add(bd);
try {
bd.setSelected(true);
} catch (PropertyVetoException e) {
e.printStackTrace();
}
}
super.windowClosed(arg0);
}
});
}
});
reVK.add(reAnlegen);
JMenuItem reKorrektur=new JMenuItem("Korrektur");
reKorrektur.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
reVK.add(reKorrektur);
reVK.add(new JMenuItem("Einzelanzeige"));
reVK.add(new JMenuItem("Löschen"));
JMenu reEK=new JMenu("Einkauf");
reEK.add(new JMenuItem("Anlegen"));
reEK.add(new JMenuItem("Korrektur"));
reEK.add(new JMenuItem("Einzelanzeige"));
reEK.add(new JMenuItem("Löschen"));
re.add(reVK);
re.add(reEK);
bewegung.add(re);
//ENDE RECHNUNG
//LIEFERSCHEIN
JMenu ls=new JMenu("Lieferschein");
JMenu lsVK=new JMenu("Verkauf");
lsVK.add(new JMenuItem("Anlegen"));
lsVK.add(new JMenuItem("Korrektur"));
lsVK.add(new JMenuItem("Einzelanzeige"));
lsVK.add(new JMenuItem("Löschen"));
JMenu lsEK=new JMenu("Einkauf");
lsEK.add(new JMenuItem("Anlegen"));
lsEK.add(new JMenuItem("Korrektur"));
lsEK.add(new JMenuItem("Einzelanzeige"));
lsEK.add(new JMenuItem("Löschen"));
ls.add(lsVK);
ls.add(lsEK);
bewegung.add(ls);
//ENDE LIEFERSCHEIN
//AUFTRAG
JMenu auftr=new JMenu("Auftrag");
JMenu auftrVK=new JMenu("Verkauf");
auftrVK.add(new JMenuItem("Anlegen"));
auftrVK.add(new JMenuItem("Korrektur"));
auftrVK.add(new JMenuItem("Einzelanzeige"));
auftrVK.add(new JMenuItem("Löschen"));
JMenu auftrEK=new JMenu("Einkauf");
auftrEK.add(new JMenuItem("Anlegen"));
auftrEK.add(new JMenuItem("Korrektur"));
auftrEK.add(new JMenuItem("Einzelanzeige"));
auftrEK.add(new JMenuItem("Löschen"));
auftr.add(auftrVK);
auftr.add(auftrEK);
bewegung.add(auftr);
//ENDE AUFTRAG
//ANGEBOT
JMenu ange=new JMenu("Angebot");
ange.add(new JMenuItem("Anlegen"));
ange.add(new JMenuItem("Korrektur"));
ange.add(new JMenuItem("Einzelanzeige"));
ange.add(new JMenuItem("Löschen"));
bewegung.add(ange);
//ENDE ANGEBOT
//ENDE Bewegung
//Mitarbeiter
JMenu mitarbeiter=new JMenu("Mitarbeiter");
mitarbeiter.setMnemonic('M');
//mitarbeiter.setFont(menuFont);
mitarbeiter.add(new JMenuItem("Anlegen"));
mitarbeiter.add(new JMenuItem("Korrektur"));
mitarbeiter.add(new JMenuItem("Einzelanzeige"));
mitarbeiter.add(new JMenuItem("Löschen"));
menu.add(mitarbeiter);
//ENDE Mitarbeiter
//Lieferanten
JMenu lieferanten=new JMenu("Lieferanten");
lieferanten.setMnemonic('L');
//lieferanten.setFont(menuFont);
menu.add(lieferanten);
lieferanten.add(new JMenuItem("Anlegen"));
lieferanten.add(new JMenuItem("Korrektur"));
lieferanten.add(new JMenuItem("Einzelanzeige"));
lieferanten.add(new JMenuItem("Löschen"));
//ENDE Leiferanten
//Kunden
JMenu kunden=new JMenu("Kunden");
kunden.setMnemonic('K');
//kunden.setFont(menuFont);
kunden.add(new JMenuItem("Anlegen"));
kunden.add(new JMenuItem("Korrektur"));
kunden.add(new JMenuItem("Einzelanzeige"));
kunden.add(new JMenuItem("Löschen"));
menu.add(kunden);
//ENDE Kunden
//Artikel
JMenu artikel=new JMenu("Artikel");
artikel.setMnemonic('A');
//artikel.setFont(menuFont);
artikel.add(new JMenuItem("Anlegen"));
artikel.add(new JMenuItem("Korrektur"));
artikel.add(new JMenuItem("Einzelanzeige"));
artikel.add(new JMenuItem("Löschen"));
menu.add(artikel);
//ENDE Artikel
//Statistik
JMenu statistik=new JMenu("Statistik");
statistik.setMnemonic('S');
//statistik.setFont(menuFont);
menu.add(statistik);
//ENDE Statistik
//Einstellungen
JMenu einstellungen=new JMenu("Einstellungen");
einstellungen.setMnemonic('E');
//einstellungen.setFont(menuFont);
menu.add(einstellungen);
//ENDE Einstellungen
//Hilfe
JMenu hilfe=new JMenu("Hilfe?");
hilfe.setMnemonic('H');
//hilfe.setFont(menuFont);
menu.add(hilfe);
//ENDE Hilfe
//ENDE Menü
w.setJMenuBar(menu);
w.setVisible(true);
w.setExtendedState(JFrame.MAXIMIZED_BOTH);
w.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// w.setPreferredSize(Toolkit.getDefaultToolkit().getScreenSize());
// w.pack();
}
}
public class KundenAuswahl extends JDialog{
private static final long serialVersionUID = 1L;
static String suchbegriff="";
static JList kundenliste;
static Vector kunden;
static JTextField suchfeld;
static JButton buttonOK;
static int kundennummer;
KundenAuswahl (String title){
setBackground(Color.GRAY);
setTitle(title);
setSize(700,480);
setPreferredSize(getSize());
setResizable(false);
Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = getSize();
int x = (int)(screenSize.getWidth() - frameSize.getWidth()) /2;
int y = (int)(screenSize.getHeight() - frameSize.getHeight()) /2;
setLocation(x,y);
designIt();
}
private void designIt() {
GridBagLayout gbl=new GridBagLayout();
GridBagConstraints c=new GridBagConstraints();
setLayout(gbl);
JLabel überschrift=new JLabel("<html><h3><u>Kunden suchen</u></h3></html>",JLabel.CENTER);
c.fill=GridBagConstraints.HORIZONTAL;
c.gridwidth=GridBagConstraints.REMAINDER;
c.anchor=GridBagConstraints.NORTH;
add(überschrift,c);
überschrift.setSize(getWidth(),20);
c.gridwidth=1;
add(new JLabel("<html>[b]Suchbegriff : [/b]</html>"),c);
c.gridwidth=GridBagConstraints.REMAINDER;
String kundenString=new String();
kunden=new Vector();
//Datenbankverbindung aufbauen
MySQLConnection sql;
try {
sql = new MySQLConnection();
ResultSet rs=sql.query.executeQuery("select K_id,K_name,K_str,K_plz,K_ort from kunden order by K_name asc;");
while(rs.next()){
kundenString=rs.getString(2);
for(int i=rs.getString(2).length();i<30;i++){
kundenString=kundenString+" ";
}
kundenString=kundenString+rs.getString(3);
for(int i=rs.getString(3).length();i<25;i++){
kundenString=kundenString+" ";
}
kundenString=kundenString+rs.getString(4);
for(int i=rs.getString(4).length();i<8;i++){
kundenString=kundenString+" ";
}
kundenString=kundenString+rs.getString(5);
for(int i=rs.getString(5).length();i<20;i++){
kundenString=kundenString+" ";
}
kundenString=kundenString+rs.getString(1);
for(int i=rs.getString(1).length();i<5;i++){
kundenString=kundenString+" ";
}
kunden.add(kundenString);
}
sql.connection.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
//ENDE Datenbankverbindung aufbauen
kundenliste=new JList();
kundenliste.setVisibleRowCount(15);
Font f=new Font("Courier",Font.PLAIN,12);
kundenliste.setFont(f);
JScrollPane scrollliste=new JScrollPane(kundenliste,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
kundenliste.setListData(kunden);
kundenliste.addKeyListener(new KeyListener() {
public void keyReleased(KeyEvent arg0) {}
public void keyPressed(KeyEvent arg0) {
//bei Enter abschicken
if(arg0.getKeyCode()==10){
dispose();
}
}
public void keyTyped(KeyEvent arg0) {}
});
suchfeld=new JTextField(70);
suchfeld.addKeyListener(new KeyListener() {
public void keyReleased(KeyEvent arg0) {
if(!suchbegriff.equals(suchfeld.getText())){
suchbegriff=suchfeld.getText();
suchbegriff=suchbegriff.trim();
kundenliste.setSelectedIndex(markKunde());
}
}
public void keyPressed(KeyEvent arg0) {
//beim Hoch- unter Runterdrücken
if(arg0.getKeyCode()==38 || arg0.getKeyCode()==40){
kundenliste.grabFocus();
kundenliste.setSelectedIndex(kundenliste.getSelectedIndex()+1);
}
}
public void keyTyped(KeyEvent arg0) {
// TODO Automatisch erstellter Methoden-Stub
}
});
add(suchfeld,c);
c.gridwidth=1;
c.gridwidth=2;
c.ipadx=150;
add(new JButton("Name"),c);
c.ipadx=100;
add(new JButton("Straße"),c);
c.ipadx=8;
add(new JButton("PLZ"),c);
c.ipadx=90;
add(new JButton("Ort"),c);
c.ipadx=20;
c.gridwidth=GridBagConstraints.REMAINDER;
add(new JButton("Nummer"),c);
c.gridwidth=GridBagConstraints.REMAINDER;
add(scrollliste,c);
buttonOK=new JButton("OK");
c.fill=GridBagConstraints.CENTER;
buttonOK.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
dispose();
}
});
add(buttonOK,c);
setVisible(true);
}
public int markKunde(){
ListIterator lt=kunden.listIterator();
String[] suchbegriffSplitt=suchbegriff.split("[\\s]++");
String text = null;
while (lt.hasNext()){
text=(String) lt.next();
Pattern p=null;
for(int i=0;i<suchbegriffSplitt.length;i++){
p=Pattern.compile("(.*"+suchbegriffSplitt[i]+".*)",Pattern.CASE_INSENSITIVE);
}
Matcher m=p.matcher(text);
if(m.lookingAt()){
return lt.nextIndex()-1;
}
}
return -1;
}
public int getKunde(){
return kundenliste.getSelectedIndex();
}
}
public class BelegDesign extends JInternalFrame{
private static final long serialVersionUID = 2248277111764864991L;
public BelegDesign(JDesktopPane desktop, int Kunden_Nr, Kundenübersicht k, JPanel beleg){
setTitle("Kundennamen");
setSize(desktop.getWidth(),desktop.getHeight());
setVisible(true);
setResizable(true);
setIconifiable(true);
setMaximizable(true);
setClosable(true);
JDesktopPane newDesktop=new JDesktopPane();
setContentPane(newDesktop);
k.setBounds(0,0,(int)(getWidth()*0.2),getHeight());
newDesktop.add(k,JLayeredPane.DEFAULT_LAYER);
JTabbedPane jt=new JTabbedPane();
jt.setBackground(Color.GRAY);
jt.addTab("Typ "+Kunden_Nr,beleg);
jt.setBorder(new BevelBorder(BevelBorder.LOWERED));
jt.setBounds((int)(getWidth()*0.2),0,(int)(getWidth()*0.8),getHeight());
newDesktop.add(jt,JLayeredPane.DEFAULT_LAYER);
addInternalFrameListener(new BelegListener());
}
}