Vielleicht wäre ein bisschen Code ganz hilfreich![]()
package com.ludevstudio.passwordmanager;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JFrame;
public class MainFrame extends JFrame{
/* This Class contains the Main Frame
This is only the blank window. */
MainPane mainPane;
// Set params for the Window
public MainFrame() {
setTitle("Password Manager v1.0");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new BorderLayout() );
setSize(800, 800);
setMinimumSize(new Dimension(800, 400));
setBackground(Color.white);
initComponents(); // Call initComponents
ActionListener actionListener = new com.ludevstudio.passwordmanager.ActionListener();
setLocationRelativeTo(null);
setVisible(true);
// Set SplitPane Divider Location
mainPane.setDividerLocation(0.67);
mainPane.setResizeWeight(0.90);
}
// init and add the Panels
public void initComponents() {
mainPane = new MainPane();
add(mainPane, BorderLayout.CENTER);
}
}
package com.ludevstudio.passwordmanager;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;
import javax.swing.border.LineBorder;
public class ActionsPanel extends JPanel {
// THis Class contains the Action Buttons on the right side.
JLabel labAddNew, labProvider, labAccount, labPasswor, labConfirm;
JTextField tfProvieder, tfAccount, tfPassword, tfConfirm;
static JButton btnAdd, btnEdit, btnDelete;
// Constructor and params
public ActionsPanel() {
setLayout(new GridLayout(10, 1, 15, 15));
setPreferredSize(new Dimension(300, 200));
setMaximumSize(getPreferredSize());
setBorder(new EmptyBorder(15, 15, 15, 15));
setBackground(Color.white);
initComponents();
}
public void initComponents() {
Font fontHead = new Font("Arial", Font.BOLD, 28);
Font fontElements = new Font("Arial", Font.CENTER_BASELINE, 22);
btnAdd = new JButton("Add Element");
btnAdd.setFont(fontElements);
btnAdd.setPreferredSize(new Dimension(200, 40));
btnAdd.setMaximumSize(new Dimension(Integer.MAX_VALUE, 40));
add(btnAdd);
btnEdit = new JButton("Edit Element");
btnEdit.setFont(fontElements);
btnEdit.setPreferredSize(new Dimension(200, 40));
btnEdit.setEnabled(false);
add(btnEdit);
btnDelete = new JButton("Delete Element");
btnDelete.setFont(fontElements);
btnDelete.setPreferredSize(new Dimension(200, 40));
btnDelete.setEnabled(false);
add(btnDelete);
}
}
Ist ja auch logisch, JFrames kann man halt keine ActionListener zuweisen...Ich kann dem MainFrame auch gar keinen ActionListenr zuweisen. Da steht dann: The Method addActionListenr(ActionListenr) is undefined for MainFrame.
Den Buttons einen ActionListener geben.Jetzt wäre noch Hilfreich zu wissen, was du machen willst...
Hier der Rest:Die beiden Klassen haben doch nichts miteinander zu tun^^
package com.ludevstudio.passwordmanager;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
import javax.swing.JComponent;
import javax.swing.JPanel;
import javax.swing.JSplitPane;
public class MainPane extends JSplitPane{
// This Class contains the main Interface.
// Set params for the Pane
public MainPane() {
setBackground(Color.white);
ManagerPanel managerPanel = new ManagerPanel();
ActionsPanel actionsPanel = new ActionsPanel();
setLeftComponent(managerPanel);
setRightComponent(actionsPanel);
}
}
Ich kann doch einem JFrame einen ActionListiner hinzufügen !?Ist ja auch logisch, JFrames kann man halt keine ActionListener zuweisen...
Dann ruf addActionListener auf denen auf?Den Buttons einen ActionListener geben.
Nein.Ich kann doch einem JFrame einen ActionListiner hinzufügen !?
Oh stimmt ich setzte ja den Listener auf den Button. Sorry!Was soll denn auch die "Action" an einem Fenster sein?
genauDu willst aber vermutlich den ActionListener in dem Frame erstellen und ihn dann an die Button in dem Panel anhängen?
Aber wenn ich alles in eine Klasse klatsche, hab ich irgdendwann keinen Durchblick mehr. Habs jetzt auch geschafft.Hab ich eigentlich heute schon erwähnt, dass Du nicht für jeden Käse JPanel/JFrame erweitern sollst.
Davon war nicht die Rede. Deine Klassen implementieren schlicht und ergreifend nichts, was ein Erweitern einer Basisklasse rechtfertigen würde.Aber wenn ich alles in eine Klasse klatsche, hab ich irgdendwann keinen Durchblick mehr.