Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Jeg har ikke tested det, men kan du ikke bare bruge setLocation til at placere dem samme sted, og saa bruge setVisible metoden til at angive hvilken der skal vaere synlig?
Kaldet til setLocation er muligvis et problem hvis du har en layout manager, da de har det med at flytte rundt paa ting.
En bedre loesning er nok, at at du laver begge de to jpanels(Lad os kalde dem j1 og j2, og hvis du saa skal skifte fra at j1 til j2 skal vaere synlig, fjerner du bare j1 fra den JComponent som den ligger i, og bagefter indsaetter du saa j2.
Det er simpelthen hvis du forestiller dig, at jeg vil lave en wizard bestående af f.eks. 3 sider/vinduer el. lign. Hertil vil der være tilknyttet knapperne frem og tilbage som bladrer igennem siderne/vinuderne og hvor der på den sidste side/vindue er en submit knap.
Ganske simpelt, men alligevel noget som volder mig problemer :-(
Du kunne lave 3 forskellige JFrame og bare skifte synligheden på dem efterhånden som det er nødvendigt... eller hvis det skal være panels kunne du gøre noget i den her stil:
Jpanel panel1 = new JPanel(); // plus tilbehør Jpanel panel2 = new JPanel(); // plus tilbehør Jpanel panel3 = new JPanel(); // plus tilbehør
også har du en knap der hedder "næste" :
JButton button1 = new JButton("næste"); // den ligger på alle 3 panels
button1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { if (panel1.isVisible()){ panel2.setVisible(true); panel1.setVisible(false);} else if (panel2.isVisible()){ panel3.setVisible(true); panel2.setVisible(false); } else if (panel3.isVisible()){ panel1.setVisible(true); panel3.setVisible(false); }
} });
så bliver der skiftet mellem de 3 panels...
ps. har bare kodet det "on the fly", så der kan være fejl :)
Hvis du bruger Netbeans "Design Editor" kan du bare placere dem oven på hinanden.
Hvis du har problemer med at se om de ligger oven på hinanden kan du jo sørge for at de har forskellige baggrundsfarver.
Her er den auto generede kode fra netbeans da jeg afprøvede det:
/* * JFrameMedTrePanels.java * * Created on 7. november 2006, 23:18 */
package test;
/** * * @author Carsten */ public class JFrameMedTrePanels extends javax.swing.JFrame {
/** Creates new form JFrameMedTrePanels */ public JFrameMedTrePanels() { 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() { jPanel1 = new javax.swing.JPanel(); jPanel2 = new javax.swing.JPanel(); jPanel3 = new javax.swing.JPanel();
Skal man i NetBeans sætte ændre ens Free Layout eller sådan noget? For jeg kan ikke placere to komponenter ovenpå hinanden. Hvis jeg prøver, så rykker den nederste ud til siden automatisk.
Nej jeg afprøvede det med Free Design, men du kan prøve at teste det med at lave et nyt Jpanel Form og tilføj et panel til det, ellers geninstallr Netbeans, lyder som en eller anden mærkelig setting
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.