URL: https://www.overclockers.at/coding-stuff/java_swing_elemente_werden_nicht_angezeigt_174433/page_1 - zur Vollversion wechseln!
Schönen Abend!
Ich muss mich gezwungenermaßen mit Swing und Java im Allgemeinen herumschlagen, stoße dabei jedoch oft auf Probleme. Bis jetzt konnte ich die doch recht gut lösen (stehe ja noch am Anfang), aber jetzt gibts ein Problem das mir nicht einleuchten will.
Das Label wird nicht angezeigt, und die Größeneinstellung wird auch einfach übergangen. Was hats da? Ich nehme an, dass Leute mit ein bissl mehr Swing-Erfahrung mir da sofort unter die Arme greifen können, oder? 
Nachfolgend nun der Code
tia, daschl
Code:import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JBook extends JFrame implements ActionListener { /* Variables */ private JLabel jlbDefault; private JMenu jmenuFile, jmenuHelp; private JMenuItem jmenuitemNew, jmenuitemDisconnect, jmenuitemSettings, jmenuitemExit, jmenuitemAbout; private JPanel jplMaster; public JBook() { /* Set up the JMenuBar */ jmenuFile = new JMenu("File"); jmenuitemNew = new JMenuItem("New"); jmenuitemDisconnect = new JMenuItem("Disconnect"); jmenuitemSettings = new JMenuItem("Settings"); jmenuitemExit = new JMenuItem("Exit"); jmenuFile.add(jmenuitemNew); jmenuFile.add(jmenuitemDisconnect); jmenuFile.addSeparator(); jmenuFile.add(jmenuitemSettings); jmenuFile.addSeparator(); jmenuFile.add(jmenuitemExit); jmenuHelp = new JMenu("Help"); jmenuitemAbout = new JMenuItem("About"); jmenuHelp.add(jmenuitemAbout); JMenuBar mb = new JMenuBar(); mb.add(jmenuFile); mb.add(jmenuHelp); setJMenuBar(mb); /* Set the frame layout manager */ setBackground(Color.gray); jplMaster = new JPanel(); jlbDefault = new JLabel("Not Connected"); jlbDefault.setHorizontalTextPosition(JLabel.CENTER); jlbDefault.setOpaque(true); getContentPane().add(jlbDefault, BorderLayout.SOUTH); addWindowListener(new WindowAdapter() { public void windowClosed(WindowEvent e) { System.exit(0); } }); } public void actionPerformed(ActionEvent e) { } public static void main(String args[]) { JBook jb = new JBook(); Container contentPane = jb.getContentPane(); contentPane.setLayout(new BorderLayout()); jb.setTitle("JBook | Intelligent SQL Management"); jb.setSize(241, 217); jb.pack(); jb.setLocation(400, 250); jb.setVisible(true); } }
bin zwar auch net der swing guru und ich kanns leider net ausprobieren, aber ich nehm an swing wirds net mögen, dass du das layout erst nach dem erstellen setzt (is borderlayout nicht eh default?).Zitat von moidaschlDas Label wird nicht angezeigt, und die Größeneinstellung wird auch einfach übergangen. Was hats da?
Also ich hab jetzt nicht alles zu 100% verstanden was du mir vermitteln wolltest, aber ich bin mal meiner Intuition gefolgt und hab begonnen ein paar Zeilen zu entfernen und siehe da - es funktioniert. So ca. hab ich deine Message mitbekommen 
Für all jene, die es interessiert nachfolgend der neue Code der main Methode.
Code:public static void main(String args[]) { JBook jb = new JBook(); jb.setTitle("JBook | Intelligent SQL Management"); jb.setSize(241, 217); jb.setLocation(400, 250); jb.setVisible(true); }
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025