hallo an das forum..
habe eine super einfache swing applikation:
habe jetzt folgende frage:
es werden in diesem code super viele andere komponenten dazukommen..
und bevor ich damit anfange wollte ich mal wissen:
könnte ich die JToolBar in eine andere Klasse definieren, zB. UIComponents, die natürlich in einem package mit der MainKlasse liegt?
weil wenn ja, dann möchte ich gerne alle Komponenten in eine andere Klasse schreiben, sodass ich mich mit der MainKlasse mit anderen dingen beschäftigen kann, und die komponenten in der anderen klasse jederzeit ändern kann falls ich das möchte später..
müsste ich nicht eingentlich ein der MainKlasse eine instanz der Klasse UIComponents haben, und in die UIComponents klasse einfach nur diese Objekte definiere?
wie kann ich diese dann ansprechen? Um sie halt in der MainKlasse im mainPanel zu addieren?
danke
habe eine super einfache swing applikation:
Java:
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
public class MainClass extends JFrame
{
/* ### the Main-Frame ### */
JFrame cc;
/* ### Panels Start ### */
private JPanel mainPanel;
private JPanel toolsPanel;
/* ### Panels End ### */
/* ### Buttons Start ### */
private JButton toolbarConnect;
private JButton toolbarOpen;
/* ### Buttons End ### */
/* ### Menus, ToolBars and Menu - ToolBars Components Start ### */
private JToolBar toolbar;
/* ### Menus and Menu Components Start ### */
/* ############################ FUNCTION ############################ */
/* ### Initialize the Layout-Objects ### */
public void initialize()
{
cc = new JFrame("Java Application");
cc.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e) {System.exit(0);}
});
mainPanel = new JPanel();
toolsPanel = new JPanel();
toolbarConnect = new JButton(new ImageIcon("toolbar/copy.gif"));
toolbarOpen = new JButton(new ImageIcon("toolbar/open.gif"));
toolbar = new JToolBar("still draggable");
toolbar.setFloatable(false);
}
/* ############################ FUNCTION ############################ */
/* ### Declaring the Layout-Objects ### */
public void setLayoutObjects()
{
mainPanel.setLayout(new GridLayout(1,1));
mainPanel.setBackground(new Color(0,0,0));
toolsPanel.setBackground(new Color(165,165,165));
}
/* ############################ FUNCTION ############################ */
/* ### Adding the Layout-Objects ### */
public void addLayoutObjects()
{
toolbar.add(toolbarConnect);
toolbar.add(toolbarOpen);
toolsPanel.add(toolbar);
mainPanel.add(toolsPanel);
}
/* ############################ FUNCTION ############################ */
/* ### Constructor of the main Class ### */
public MainClass()
{
initialize();
setLayoutObjects();
addLayoutObjects();
cc.add(mainPanel);
cc.setSize(200,100);
cc.setLocation(500,300);
cc.setVisible(true);
}
/* ############################ CLASS ############################ */
/* ### ActionKlasse - EventHandler ### */
class CActionListener implements ActionListener
{
/* ############################ FUNCTION ############################ */
public void actionPerformed(ActionEvent ev)
{
}
}
/* ### Main Function - Call of the FrameObject ### */
public static void main (String[] arguments)
{
new MainClass();
}
}
habe jetzt folgende frage:
es werden in diesem code super viele andere komponenten dazukommen..
und bevor ich damit anfange wollte ich mal wissen:
könnte ich die JToolBar in eine andere Klasse definieren, zB. UIComponents, die natürlich in einem package mit der MainKlasse liegt?
weil wenn ja, dann möchte ich gerne alle Komponenten in eine andere Klasse schreiben, sodass ich mich mit der MainKlasse mit anderen dingen beschäftigen kann, und die komponenten in der anderen klasse jederzeit ändern kann falls ich das möchte später..
müsste ich nicht eingentlich ein der MainKlasse eine instanz der Klasse UIComponents haben, und in die UIComponents klasse einfach nur diese Objekte definiere?
wie kann ich diese dann ansprechen? Um sie halt in der MainKlasse im mainPanel zu addieren?
danke