Zoals beschreven in Oracle 's Java documentatie , lijsten worden programmavensters weergegeven door Windows . Frames kunnen inhoud van een applicatie weer te geven , of de inhoud voor dialoogvensters , zoals die voor het laden en opslaan van bestanden te houden . Java- applets ( programma's die in browsers en andere containers die relatief weinig bewerkingen uitvoeren ) in het algemeen niet nieuwe frames maken , al hebben ze de mogelijkheid om dat te doen . Het voordeel van het openen van een nieuw frame van een applet is duidelijk : door het plaatsen van inhoud in een nieuw frame , zoals een prompt voor een gebruiker om haar naam in te voeren , de ontwikkelaar voorkomt verrommeling hoofdframe van de applet . Wat je nodig hebt De Java Development Kit ( JDK ) Toon Meer Aanwijzingen 1 Open een teksteditor of tekstverwerker en typ of plak in een nieuw document deze applet programmacode : public void init ( ) op { //Get ruit inhoud, die we nodig hebben om knopen en andere inhoud toe te voegen aan container paneForContent = getContentPane ( ) ; paneForContent.setLayout (nieuw BorderLayout ( 12,12 ) ) ; JLabel title = new JLabel ( " Frame Demo " ) ; paneForContent.add ( titel , BorderLayout.NORTH ) ; JPanel somePanel = new JPanel ( ) ; JLabel someLabel = new JLabel ( " Druk op de knop . " ) ; somePanel.add ( someLabel ) ; paneForContent.add ( somePanel , BorderLayout.CENTER ) ; JPanel panelForButtons = new JPanel ( ) ; JButton someButton = new JButton ( " Press BorderLayout.SOUTH ) ; } /* actionPerformed ( ) wordt opgeroepen wanneer drukt de gebruiker op een knop * / public void actionPerformed ( ActionEvent evt ) op { //open een nieuw frame ( venster ) attachNewFrame ( ) op ; } } Deze code creëert een nieuwe applet voor uw browser weer te geven . de belangrijkste functie is init ( ) , die het label en knoop de applet displays creëert . de code kent , via de " addActionListener " call , de actie moet worden ondernomen wanneer de someButton ' knop ' wordt ingedrukt . Wanneer deze gebeurtenis , de Java Runtime Environment (JRE ) noemt de functie , van de applet " actionPerformed " die op zijn beurt roept de functie aan het nieuwe kader te creëren , " attachNewFrame . " Typ de volgende code 2 net na de accolade sluiten na de verklaring " paneForContent.add ( panelForButtons , BorderLayout.SOUTH ) ; " : private static void attachNewFrame ( ) { JFrame newFrame = new JFrame ( " Hier is een newFrame " ) ; newFrame.setDefaultCloseOperation ( JFrame.DISPOSE_ON_CLOSE ) ; JLabel Alabel = new JLabel ( " . " ) ; aLabel.setPreferredSize ( nieuwe dimensie ( 150 , 125 ) ) ; . newFrame.getContentPane ( ) toe te voegen ( Alabel , BorderLayout.CENTER ) ; //Toon het frame newFrame.pack ( ) op ; < br > newFrame.setVisible (true ) ; } Deze code roept de " JFrame " constructeur , die een nieuwe , virtuele object dat het nieuwe frame vertegenwoordigt creëert . De setDefaultCloseOperation functie oproep vertelt het frame wat te doen wanneer de gebruiker zijn exit knop klikt - dicht . De " pack" en de functie " setVisible " noemt geven het frame . De uitspraken met betrekking tot de " Alabel " object te maken sommige voorbeeld inhoud in het frame te geven . Zonder deze inhoud , zou het beeld weer te geven , maar zou worden geminimaliseerd tot een nauwelijks zichtbare titelbalk . 3 Sla het document op als type " Platte tekst , " met de bestandsnaam " AppletWithFrame.java . " 4 plakken in een nieuw document deze HTML-pagina , waarin de applet wordt geopend : < applet code = " AppletWithFrame . class " width = 250 height = 250 codebase = " . " > < Twitter /applet > < /html > 5 Sla het HTML-document als " AppletWithFrame.html , " in dezelfde map als de java -bestand dat u hebt opgeslagen in stap 3 . 6 Open een DOS-prompt in de map met het Java-bestand , en het compileren van het programma door het intikken van " javac AppletWithFrame.java . " < br > 7 invoeren , bij de opdrachtprompt , " appletviewer AppletWithFrame.html " om de applet . 8 Druk op " Druk op mij" toets van de applet om de code van de applet draaien voor het creëren van een nieuwe frame. Het nieuwe kader zal verschijnen . |