Avatar billede team-temp Nybegynder
29. september 2006 - 17:54 Der er 9 kommentarer og
1 løsning

Åbne Menu i Java

Hejsa eksperter.

Jeg har denne kode:

/*
* NewMDIApplication.java
*
* Created on 29. september 2006, 17:42
*/

/**
*
* @author  Jonas Dreyer
*/
public class NewMDIApplication extends javax.swing.JFrame {
   
    /** Creates new form NewMDIApplication */
    public NewMDIApplication() {
        initComponents();
    }
   
    /** This method is called from within the constructor to
    * initialize the form.
    * WARNING: Do NOT modify this code. The content of this method is
    * always regenerated by the Form Editor.
    */
    // <editor-fold defaultstate="collapsed" desc=" Generated Code ">
    private void initComponents() {
        desktopPane = new javax.swing.JDesktopPane();
        menuBar = new javax.swing.JMenuBar();
        fileMenu = new javax.swing.JMenu();
        openMenuItem = new javax.swing.JMenuItem();
        saveMenuItem = new javax.swing.JMenuItem();
        saveAsMenuItem = new javax.swing.JMenuItem();
        exitMenuItem = new javax.swing.JMenuItem();
        editMenu = new javax.swing.JMenu();
        cutMenuItem = new javax.swing.JMenuItem();
        copyMenuItem = new javax.swing.JMenuItem();
        pasteMenuItem = new javax.swing.JMenuItem();
        deleteMenuItem = new javax.swing.JMenuItem();
        helpMenu = new javax.swing.JMenu();
        contentMenuItem = new javax.swing.JMenuItem();
        aboutMenuItem = new javax.swing.JMenuItem();
        jMenu1 = new javax.swing.JMenu();
        jMenuItem1 = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("LaZoR programming");
        setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));

        fileMenu.setText("File");
        openMenuItem.setText("Open");
        fileMenu.add(openMenuItem);

        saveMenuItem.setText("Save");
        fileMenu.add(saveMenuItem);

        saveAsMenuItem.setText("Save As ...");
        fileMenu.add(saveAsMenuItem);

        exitMenuItem.setText("Exit");
        exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                exitMenuItemActionPerformed(evt);
            }
        });

        fileMenu.add(exitMenuItem);

        menuBar.add(fileMenu);

        editMenu.setText("Edit");
        cutMenuItem.setText("Cut");
        editMenu.add(cutMenuItem);

        copyMenuItem.setText("Copy");
        editMenu.add(copyMenuItem);

        pasteMenuItem.setText("Paste");
        editMenu.add(pasteMenuItem);

        deleteMenuItem.setText("Delete");
        editMenu.add(deleteMenuItem);

        menuBar.add(editMenu);

        helpMenu.setText("Help");
        contentMenuItem.setText("Contents");
        helpMenu.add(contentMenuItem);

        aboutMenuItem.setText("About");
        helpMenu.add(aboutMenuItem);

        menuBar.add(helpMenu);

        jMenu1.setText("Menu");
        jMenuItem1.setText("Start et program");
        jMenuItem1.setNextFocusableComponent(aboutMenuItem);
        jMenu1.add(jMenuItem1);

        menuBar.add(jMenu1);

        setJMenuBar(menuBar);

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(desktopPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(desktopPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 279, Short.MAX_VALUE)
        );
        pack();
    }// </editor-fold>
   
    private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt) {                                           
        System.exit(0);
    }                                           
   
    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new NewMDIApplication().setVisible(true);
            }
        });
    }
   
    // Variables declaration - do not modify
    private javax.swing.JMenuItem aboutMenuItem;
    private javax.swing.JMenuItem contentMenuItem;
    private javax.swing.JMenuItem copyMenuItem;
    private javax.swing.JMenuItem cutMenuItem;
    private javax.swing.JMenuItem deleteMenuItem;
    private javax.swing.JDesktopPane desktopPane;
    private javax.swing.JMenu editMenu;
    private javax.swing.JMenuItem exitMenuItem;
    private javax.swing.JMenu fileMenu;
    private javax.swing.JMenu helpMenu;
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenuItem jMenuItem1;
    private javax.swing.JMenuBar menuBar;
    private javax.swing.JMenuItem openMenuItem;
    private javax.swing.JMenuItem pasteMenuItem;
    private javax.swing.JMenuItem saveAsMenuItem;
    private javax.swing.JMenuItem saveMenuItem;
    // End of variables declaration
   
}

Også har jeg en menu der hedder "MENU" under menuen hedder "Start et program" Så når man klikker på "Start program" skal den åbne et vindue hvor man kan starte et program.

Er der en simpel kode for det?

Eller er det stort?
Vis det er for stor en kode. Hvordan starter man så et enkelt program.

MVh Temp
Avatar billede mikkelbm Nybegynder
29. september 2006 - 17:59 #1
Hvad er det for et program du vil starte?
Avatar billede team-temp Nybegynder
29. september 2006 - 18:03 #2
Fx internet explore
Avatar billede mikkelbm Nybegynder
29. september 2006 - 19:42 #3
Så burde følgende kunne gøre det:

Runtime.getRuntim().exec ("C:\\Programmer\\Internet Explorer\\iexplore.exe");
Avatar billede mikkelbm Nybegynder
29. september 2006 - 19:49 #4
Der mangler så lige et e - beklager :)

Runtime.getRuntime().exec ("C:\\Programmer\\Internet Explorer\\iexplore.exe");
Avatar billede team-temp Nybegynder
30. september 2006 - 01:42 #5
JA det virker.. Har et spørgsmål til

Hvordan får jeg det til en exe fil?
Avatar billede mikkelbm Nybegynder
30. september 2006 - 09:22 #6
I Java arbejder man normalt ikke med exe filer, da det vil ødelægge platformsuafhængigheden. Derimod pakker man sine class-filer ind i en såkaldt jar-fil, som så kan eksekveres ved et dobbeltklik, hvis man vel at mærke har defineret sit manifest rigtigt og java runtime er i PATH.

Det kan gøres commandline:

http://java.sun.com/docs/books/tutorial/deployment/jar/

Og mon ikke også at dit IDE kan klare det for dig. Jeg kan ikke ud fra koden se hvilken editor du bruger, men de fleste større editorer kan lave det for dig.
Avatar billede mikkelbm Nybegynder
30. september 2006 - 09:23 #7
Hvis du vil ha' pakket det ind i en exe-fil, kan følgende program:

http://launch4j.sourceforge.net/

gøre dette for dig. Men det er først efter du har lavet din jar-fil.

Det er ikke nogen nem opgave i starten at få udgivet sine java-applikationer, men med tiden lærer man det.
Avatar billede mikkelbm Nybegynder
30. september 2006 - 09:24 #8
Og et svar - i tilfælde af at du fandt mine svar brugbare :)
Avatar billede team-temp Nybegynder
30. september 2006 - 13:48 #9
Okay, jeg har en fil der hedder "ASD.java"

Hvad er commanden til at lave det til JAR.

Forstår det ikke rigtigt :D
Avatar billede mikkelbm Nybegynder
02. oktober 2006 - 12:23 #10
Først skal du finde den class-fil som der bliver compilet. Derefter laver en tekstfil (navngiv den: MANIFEST.MF) med følgende indhold:

Main-Class: ASD

(Der SKAL være et linjeskift efter main-class linjen - ellers skal filen ikke indeholde andet)

Du laver din jar fil med følgende:

jar cvmf MANIFEST.MF dinJar.jar ASD.class
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester