Hallo, ich spiele gerade ein wenig mit dem Visual Editor von Eclipse rum. Und versuche mich zudem in Swing einzuarbeiten.
Dazu hab ich diese Anwendung erstellt.
Mein Problem ist das sich die Maske immer links-oben öffnet. Müsste die nicht eigendlich mit this.setLocation(450,400); verschiebbar sein?
Dazu hab ich diese Anwendung erstellt.
Code:
import javax.swing.JFrame;
import java.awt.event.*;
public class Testclass extends JFrame {
private javax.swing.JPanel jContentPane = null;
private javax.swing.JTextField jTextField = null;
private javax.swing.JPasswordField jPasswordField = null;
private javax.swing.JLabel jLabel = null;
private javax.swing.JLabel jLabel1 = null;
private javax.swing.JButton jButton = null;
private javax.swing.JButton jButton1 = null;
private javax.swing.JLabel jLabel2 = null;
private int counter = 0;
/**
* This is the default constructor
*/
public Testclass()
{
super();
initialize();
checkActions();
}
/**
* This method checks the User Actions
*
* @return void
*/
public void checkActions()
{
// Erzeugt einen ActionListener auf jButton
jButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
if(jTextField.getText().toLowerCase().equals("admin") && jPasswordField.getText().equals("Passwort") && counter <= 2)
{
jLabel2.setForeground(new java.awt.Color(109,97,80));
jLabel2.setText("Benutzername und Passwort korrekt!");
counter = 0;
}
else if(!jTextField.getText().toLowerCase().equals("admin") && counter <= 2)
{
jLabel2.setForeground(java.awt.Color.red);
jLabel2.setText("Der Benutzername stimmt nicht!");
counter ++;
}
else if (!jPasswordField.getText().equals("Passwort") && counter <= 2)
{
jLabel2.setForeground(java.awt.Color.red);
jLabel2.setText("Das Passwort stimmt nicht!");
counter ++;
}
else if (jTextField.getText().equals("") && jPasswordField.getText().equals("") && counter <= 2)
{
jLabel2.setForeground(java.awt.Color.red);
jLabel2.setText("Geben Sie Werte ein!");
counter ++;
}
else
{
jLabel2.setForeground(java.awt.Color.red);
jLabel2.setText(counter + " Fehlversuche. Klicken Sie auf \"Abbrechen\"!");
}
}
});
// Erzeugt einen ActionListener auf jButton1
jButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
// Beendet das Programm
System.exit(0);
}
});
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setContentPane(getJContentPane());
this.setSize(250, 150);
this.setIconImage(java.awt.Toolkit.getDefaultToolkit().getImage("icon.jpg"));
this.setTitle("Anmelden");
this.setForeground(java.awt.Color.black);
this.setBackground(new java.awt.Color(204,204,204));
this.setResizable(false);
this.setLocation(450, 400);
this.setVisible(false);
this.setName("Hauptframe");
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private javax.swing.JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new javax.swing.JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJTextField(), null);
jContentPane.add(getJPasswordField(), null);
jContentPane.add(getJLabel(), null);
jContentPane.add(getJLabel1(), null);
jContentPane.add(getJButton(), null);
jContentPane.add(getJButton1(), null);
jContentPane.add(getJLabel2(), null);
jContentPane.setName("HauptPane");
}
return jContentPane;
}
/**
* This method initializes jTextField
*
* @return javax.swing.JTextField
*/
private javax.swing.JTextField getJTextField() {
if(jTextField == null) {
jTextField = new javax.swing.JTextField();
jTextField.setSize(120, 20);
jTextField.setLocation(100, 20);
jTextField.setName("BenutzerTextfield");
}
return jTextField;
}
/**
* This method initializes jPasswordField
*
* @return javax.swing.JPasswordField
*/
private javax.swing.JPasswordField getJPasswordField() {
if(jPasswordField == null) {
jPasswordField = new javax.swing.JPasswordField();
jPasswordField.setSize(120, 20);
jPasswordField.setLocation(100, 50);
jPasswordField.setName("KennwortTextfield");
}
return jPasswordField;
}
/**
* This method initializes jLabel
*
* @return javax.swing.JLabel
*/
private javax.swing.JLabel getJLabel() {
if(jLabel == null) {
jLabel = new javax.swing.JLabel();
jLabel.setSize(60, 20);
jLabel.setText("Benutzer:");
jLabel.setLocation(20, 20);
jLabel.setMaximumSize(new java.awt.Dimension(60,20));
jLabel.setForeground(new java.awt.Color(113,102,152));
jLabel.setName("BenutzerLabel");
}
return jLabel;
}
/**
* This method initializes jLabel1
*
* @return javax.swing.JLabel
*/
private javax.swing.JLabel getJLabel1() {
if(jLabel1 == null) {
jLabel1 = new javax.swing.JLabel();
jLabel1.setSize(70, 20);
jLabel1.setText("Kennwort:");
jLabel1.setLocation(20, 50);
jLabel1.setForeground(new java.awt.Color(113,102,152));
jLabel1.setName("KennwortLabel");
}
return jLabel1;
}
/**
* This method initializes jButton
*
* @return javax.swing.JButton
*/
private javax.swing.JButton getJButton() {
if(jButton == null) {
jButton = new javax.swing.JButton();
jButton.setSize(97, 25);
jButton.setText("Anmelden");
jButton.setLocation(20, 90);
jButton.setPreferredSize(new java.awt.Dimension(95,25));
jButton.setSelected(false);
jButton.setMnemonic(java.awt.event.KeyEvent.VK_A);
jButton.setName("AnmeldeButton");
}
return jButton;
}
/**
* This method initializes jButton1
*
* @return javax.swing.JButton
*/
private javax.swing.JButton getJButton1() {
if(jButton1 == null) {
jButton1 = new javax.swing.JButton();
jButton1.setSize(97, 25);
jButton1.setText("Abbrechen");
jButton1.setLocation(123, 90);
jButton1.setMnemonic(java.awt.event.KeyEvent.VK_B);
jButton1.setName("AbbrechenButton");
}
return jButton1;
}
/**
* This method initializes jLabel2
*
* @return javax.swing.JLabel
*/
private javax.swing.JLabel getJLabel2() {
if(jLabel2 == null) {
jLabel2 = new javax.swing.JLabel();
jLabel2.setSize(250, 10);
jLabel2.setText("");
jLabel2.setHorizontalTextPosition(javax.swing.SwingConstants.LEADING);
jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel2.setFont(new java.awt.Font("Dialog", java.awt.Font.BOLD, 10));
jLabel2.setForeground(java.awt.Color.red);
jLabel2.setLocation(0, 75);
}
return jLabel2;
}
}
Mein Problem ist das sich die Maske immer links-oben öffnet. Müsste die nicht eigendlich mit this.setLocation(450,400); verschiebbar sein?