package testapp;
import java.awt.BorderLayout;
import java.awt.Rectangle;
import javax.swing.BorderFactory;
import javax.swing.JInternalFrame;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
import java.awt.Dimension;
import java.awt.GridBagLayout;
import java.awt.Color;
import java.awt.Cursor;
import javax.swing.JLabel;
import java.awt.GridBagConstraints;
import javax.swing.JButton;
import java.awt.FlowLayout;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import javax.swing.JScrollPane;
import javax.swing.border.BevelBorder;
import javax.swing.event.MouseInputAdapter;
import javax.swing.plaf.basic.BasicInternalFrameUI;
import javax.swing.border.TitledBorder;
import java.awt.Font;
public class BorderTest2 extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
public int mainframe_x=0;
public int mainframe_y=0;
private JPanel jPanelSouth = null;
private JLabel jLabelS = null;
private JButton jButtonLogin = null;
private JButton jButtonLogout = null;
private JButton jButtonCL = null;
private JPanel jPanelLogin = null;
private JPanel jPanelNorth = null;
private JButton jButton3 = null;
private JPanel jPanelE = null;
private JLabel jLabelE = null;
private JPanel jPanelStatus = null;
public JTextArea jTextAreaStatus = null;
private JScrollPane jScrollPaneEigenschaften = null;
JInternalFrame labelarray[]= new JInternalFrame [500];
private int deltaX, deltaY;
private JScrollPane jScrollPaneW = null;
private JLabel jLabelBild = null;
public int i = 0;
/**
* This is the default constructor
*/
public BorderTest2() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
this.mainframe_x=this.getGraphicsConfiguration().getBounds().width;
this.mainframe_y=this.getGraphicsConfiguration().getBounds().height;
// this.setBounds(new Rectangle(0, 0, mainframe_x, mainframe_y));
this.setBounds(new Rectangle(0, 0, 704, 557));
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(new BorderLayout());
jContentPane.add(getJPanelSouth(), BorderLayout.SOUTH);
jContentPane.add(getJPanelLogin(), BorderLayout.CENTER);
jContentPane.add(getJPanelNorth(), BorderLayout.NORTH);
jContentPane.add(getJPanelE(), BorderLayout.EAST);
jContentPane.add(getJScrollPaneW(), BorderLayout.WEST);
}
return jContentPane;
}
/**
* This method initializes jPanelSouth
*
* @return javax.swing.JPanel
*/
private JPanel getJPanelSouth() {
if (jPanelSouth == null) {
jLabelS = new JLabel();
JLabel jLabelS2 = new JLabel();
float x_f=(this.getGraphicsConfiguration().getBounds().width)*(1.0f/2.0f)-174;
int x=Math.round(x_f);
jLabelS.setPreferredSize(new Dimension(x, 100));
jLabelS2.setPreferredSize(new Dimension(1, 10));
jPanelSouth = new JPanel();
jPanelSouth.setLayout(new BorderLayout());
jPanelSouth.setBackground(Color.green);
jPanelSouth.add(jLabelS, BorderLayout.WEST);
jPanelSouth.add(jLabelS2, BorderLayout.NORTH);
jPanelSouth.add(getJPanelStatus(), BorderLayout.CENTER);
}
return jPanelSouth;
}
/**
* This method initializes jPanelLogin
*
* @return javax.swing.JPanel
*/
private JPanel getJPanelStatus() {
if (jPanelStatus == null) {
jPanelStatus = new JPanel();
jPanelStatus.setBackground(Color.green);
jPanelStatus.setLayout(null);
jPanelStatus.setBounds(new Rectangle(0, 0, 350, 100));
jPanelStatus.add(getJTextAreaStatus(), null);
}
return jPanelStatus;
}
/**
* This method initializes jTextAreaStatus
*
* @return javax.swing.JTextArea
*/
private JTextArea getJTextAreaStatus() {
if (jTextAreaStatus == null) {
jTextAreaStatus = new JTextArea();
jTextAreaStatus.setBounds(new Rectangle(0, 0, 350, 90));
jTextAreaStatus.setEditable(false);
jTextAreaStatus.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
}
return jTextAreaStatus;
}
/**
* This method initializes jButtonLogin
*
* @return javax.swing.JButton
*/
private JButton getJButtonLogin() {
if (jButtonLogin == null) {
jButtonLogin = new JButton();
jButtonLogin.setText("LI");
jButtonLogin.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
jScrollPaneW.setVisible(false);
jPanelE.setVisible(false);
jPanelLogin.setVisible(true);
jTextAreaStatus.setText("li");
}
});
}
return jButtonLogin;
}
/**
* This method initializes jPanelNorth
*
* @return javax.swing.JPanel
*/
private JPanel getJPanelNorth() {
if (jPanelNorth == null) {
jPanelNorth = new JPanel();
jPanelNorth.setLayout(new FlowLayout());
jPanelNorth.add(getJButtonLogin(), null);
jPanelNorth.add(getJButtonLogout(), null);
jPanelNorth.add(getJButton3(), null);
}
return jPanelNorth;
}
/**
* This method initializes jButtonLogout
*
* @return javax.swing.JButton
*/
private JButton getJButtonLogout() {
if (jButtonLogout == null) {
jButtonLogout = new JButton();
jButtonLogout.setText("1");
jButtonLogout.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
jScrollPaneW.setVisible(true);
jPanelLogin.setVisible(false);
jTextAreaStatus.setText("1");
}
});
}
return jButtonLogout;
}
/**
* This method initializes jPanelLogin
*
* @return javax.swing.JPanel
*/
private JPanel getJPanelLogin() {
if (jPanelLogin == null) {
jPanelLogin = new JPanel();
jPanelLogin.setLayout(new GridBagLayout());
jPanelLogin.setBackground(Color.yellow);
jPanelLogin.setVisible(false);
}
return jPanelLogin;
}
/**
* This method initializes jButton3
*
* @return javax.swing.JButton
*/
private JButton getJButton3() {
if (jButton3 == null) {
jButton3 = new JButton();
jButton3.setText("2");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
jPanelLogin.setVisible(false);
jPanelE.setVisible(true);
jTextAreaStatus.setText("2");
}
});
}
return jButton3;
}
/**
* This method initializes jPanelE
*
* @return javax.swing.JPanel
*/
private JPanel getJPanelE() {
if (jPanelE == null) {
jLabelE = new JLabel();
float x_f=(this.getGraphicsConfiguration().getBounds().width)*(1.0f/4.0f);
int x=Math.round(x_f);
jLabelE.setPreferredSize(new Dimension(x, 1));
jPanelE = new JPanel();
jPanelE.setLayout(new BorderLayout());
jPanelE.setBackground(Color.blue);
jPanelE.setVisible(true);
jPanelE.add(jLabelE, BorderLayout.NORTH);
jPanelE.add(getJScrollPaneEigenschaften(), BorderLayout.CENTER);
jPanelE.add(getJButtonCL(),BorderLayout.SOUTH);
}
return jPanelE;
}
/**
* This method initializes jScrollPaneEigenschaften
*
* @return javax.swing.JScrollPane
*/
private JScrollPane getJScrollPaneEigenschaften() {
if (jScrollPaneEigenschaften == null) {
jScrollPaneEigenschaften = new JScrollPane();
jScrollPaneEigenschaften.setBorder(BorderFactory.createLineBorder(Color.green, 5));
}
return jScrollPaneEigenschaften;
}
/**
* This method initializes jButton3
*
* @return javax.swing.JButton
*/
private JButton getJButtonCL() {
if (jButtonCL == null) {
jButtonCL = new JButton();
jButtonCL.setText("Create");
jButtonCL.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
create_label();
}
});
}
return jButtonCL;
}
/**
* This method initializes jScrollPaneW
*
* @return javax.swing.JScrollPane
*/
private JScrollPane getJScrollPaneW() {
if (jScrollPaneW == null) {
jLabelBild = new JLabel();
jLabelBild.setText("sgsdfgsdfgsdfgsdfgsdfgsdfgsdgsdfgsdgsdgfsdgfsdfg");
jLabelBild.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.green, 5), "test", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, new Font("Dialog", Font.BOLD, 12), new Color(51, 51, 51)));
jLabelBild.setBounds(new Rectangle(0, 0, 353, 381));
jScrollPaneW = new JScrollPane();
jScrollPaneW.setViewportView(jLabelBild);
}
return jScrollPaneW;
}
public void create_label(){
final JInternalFrame labelframe = new JInternalFrame();
labelframe.setBounds(50, 50, 50, 50);
labelframe.setResizable(true);
labelframe.setVisible(true);
labelframe.setBackground(new Color(0.0f, 0.0f, 0.0f, 0.0f));
((BasicInternalFrameUI)labelframe.getUI()).setNorthPane(null);
//labelframe.setBorder(BorderFactory.createLineBorder(color, 2));
if(i==0){
i++;
labelframe.setBorder(BorderFactory.createLineBorder(Color.green, 5));
}else{
if(i==1){
i++;
labelframe.setBorder(BorderFactory.createLineBorder(Color.red, 5));
}else{
labelframe.setBorder(BorderFactory.createLineBorder(Color.blue, 5));
}
}
final JLabel label = new JLabel();
for(int i=0; i<labelarray.length; i++){
if(labelarray[i]==null){
labelframe.setTitle(""+i);
labelarray[i] = labelframe;
break;
}
}
labelframe.add(label);
jLabelBild.add(labelframe);
jLabelBild.revalidate();
jLabelBild.repaint();
labelframe.addMouseListener(new java.awt.event.MouseListener() {
public void mouseClicked(java.awt.event.MouseEvent e) {
}
public void mousePressed(java.awt.event.MouseEvent e) {
}
public void mouseReleased(java.awt.event.MouseEvent e) {
}
public void mouseEntered(java.awt.event.MouseEvent e) {
}
public void mouseExited(java.awt.event.MouseEvent e) {
}
});
label.addMouseListener(new java.awt.event.MouseListener() {
public void mouseClicked(java.awt.event.MouseEvent e) {
}
public void mousePressed(java.awt.event.MouseEvent e) {
System.out.println(labelframe);
System.out.println(labelframe.getTitle());
labelframe.moveToFront();
labelframe.repaint();
labelframe.revalidate();
}
public void mouseReleased(java.awt.event.MouseEvent e) {
labelframe.toFront();
}
public void mouseEntered(java.awt.event.MouseEvent e) {
}
public void mouseExited(java.awt.event.MouseEvent e) {
}
});
MouseListener ml = new MouseInputAdapter() {
public void mousePressed(MouseEvent e) {
deltaX = e.getPoint().x;
deltaY = e.getPoint().y;
}
};
MouseMotionListener mml = new MouseInputAdapter() {
public void mouseDragged(MouseEvent e) {
labelframe.setLocation(labelframe.getLocation().x + e.getPoint().x - deltaX,
labelframe.getLocation().y + e.getPoint().y - deltaY);
jLabelBild.repaint();
}
};
label.addMouseListener(ml);
label.addMouseMotionListener(mml);
}
} // @jve:decl-index=0:visual-constraint="4,12"