[ nemnesic @ 27.02.2005. 02:21 ] @
Pa ovako. imam jednu classu nije bitno evo code: Code: mport java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class BrowserFrame extends JFrame{ private JLabel lblImage; private JButton jbtnBack, jbtnRefresh, jbtnFwd, jbtnExec, jbtnStop; private JTextArea jtaQuery; private JTabbedPane jtpResults; private JTree jTree1, jTree2; private CreateMenus menus; private JScrollPane sp; public BrowserFrame() { super("Browser Frame"); initComponents(); /* Icon dbImage = new ImageIcon("Globe.gif"); lblImage = new JLabel(); lblImage.setIcon(dbImage);*/ setSize(900, 600); setVisible(true); } public void initComponents() { jbtnBack = new JButton(); jbtnRefresh = new JButton(); jtaQuery = new JTextArea(); sp = new JScrollPane(); jbtnFwd = new JButton(); jbtnExec = new JButton(); jbtnStop = new JButton(); jtpResults = new JTabbedPane(); jTree1 = new JTree(); jTree2 = new JTree(); menus = new CreateMenus(); //set the Layout to null, so u can add your components whenever u want. getContentPane().setLayout(null); //sets the default font to Arial setFont(new Font("Arial", 0, 10)); //sets icon for Back button and place it on the JForm jbtnBack.setIcon(new ImageIcon("images//stock-go-back.png")); jbtnBack.setHorizontalTextPosition(SwingConstants.CENTER); getContentPane().add(jbtnBack); jbtnBack.setBounds(20, 20, 70, 60); jbtnRefresh.setIcon(new javax.swing.ImageIcon("images//stock-refresh.png")); jbtnRefresh.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); getContentPane().add(jbtnRefresh); jbtnRefresh.setBounds(100, 20, 80, 60); jtaQuery.setLineWrap(true); sp.setViewportView(jtaQuery); getContentPane().add(sp); sp.setBounds(280, 20, 330, 60); jbtnFwd.setIcon(new javax.swing.ImageIcon("images//stock-go-forward.png")); jbtnFwd.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); getContentPane().add(jbtnFwd); jbtnFwd.setBounds(190, 20, 70, 60); jbtnExec.setIcon(new javax.swing.ImageIcon("images//stock-execute.png")); getContentPane().add(jbtnExec); jbtnExec.setBounds(620, 20, 70, 60); jbtnStop.setIcon(new javax.swing.ImageIcon("images//stock-stop.png")); jbtnStop.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); getContentPane().add(jbtnStop); jbtnStop.setBounds(700, 20, 70, 60); jtpResults.setBorder(new javax.swing.border.BevelBorder(javax.swing.border.BevelBorder.RAISED)); getContentPane().add(jtpResults); jtpResults.setBounds(30, 100, 560, 390); getContentPane().add(jTree1); jTree1.setBounds(600, 100, 230, 170); getContentPane().add(jTree2); jTree2.setBounds(600, 280, 230, 190); setJMenuBar(menus.doIt()); } public static void main(String args[]) { BrowserFrame app = new BrowserFrame(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } kao sto vidite postoji klasa CreateMenus ovo je CreateMenus klasa Code: import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class CreateMenus extends JFrame { private JMenuBar jMBar; private JMenu fileMenu, editMenu, toolsMenu, helpMenu; private JMenuItem newConnectionItem, openScripItem, closeConnectionItem, exitItem; private JMenuItem cutItem, copyItem, pasteItem, selectAllItem; private JMenuItem toolsItem1, toolsItem2; private JMenuItem contentsItem, mySqlRefItem, aboutItem; public int counter = 0; public CreateMenus() { createComponents(); addActionListenersToMenuItems(); } private void createComponents() { makeMenuItems(); makeMenus(); addActionListenersToMenuItems(); } private void makeMenuItems() { newConnectionItem = new JMenuItem("New Connection..."); newConnectionItem.setMnemonic('N'); } private void makeMenus() { jMBar = new JMenuBar(); fileMenu = new JMenu(); editMenu = new JMenu(); toolsMenu = new JMenu(); helpMenu = new JMenu(); fileMenu.setText("File"); fileMenu.setMnemonic('F'); fileMenu.add(newConnectionItem); editMenu.setText("Edit"); editMenu.setMnemonic('E'); toolsMenu.setText("Tools"); toolsMenu.setMnemonic('T'); helpMenu.setText("Help"); helpMenu.setMnemonic('H'); } private void addActionListenersToMenuItems() { newConnectionItem.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e) { Options optionsFrame = new Options(); } }); } public JMenuBar doIt() { jMBar.add(fileMenu); jMBar.add(editMenu); jMBar.add(toolsMenu); jMBar.add(helpMenu); return jMBar; } } i jos jedna klasa Options Code: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Options extends JFrame { ConnectionParameters connParam; ConnectionTree connTree; JPanel treePanel; public Options() { super("Options Connection"); Container c = getContentPane(); c.setLayout( new FlowLayout() ); connTree = new ConnectionTree(); c.add(connTree); connParam = new ConnectionParameters(); c.add(connParam); setSize(566, 452); setVisible(true); } public static void main(String args[]) { LookAndFeel lf = UIManager.getLookAndFeel(); // Install a different look and feel; specifically, the Windows look and feel try { UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); } catch (InstantiationException e) { } catch (ClassNotFoundException e) { } catch (UnsupportedLookAndFeelException e) { } catch (IllegalAccessException e) { } Options window = new Options(); window.setTitle("Options Connection"); window.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); window.pack(); window.show(); } } ok a sada problem: Kada kliknem na menu new Connection kao da sam dva puta kliknuo... nije mi jasno zasto. morao sam da stavim if sa counter-om da bi se samo jednom OptionsFrame pojavljivao. da li neko zna u cemu je problem.. hvala puno nn |