Как сделать Frame активным или самым верхним окном? - Java
Формулировка задачи:
Помогите. Я делаю
frame.setVisible(true);
Окно появляется, но остается под активным приложением, в котором я работаю в данный момент. Мне нужно сделать что-то типа оповещающего окна, которое всегда при определенных условиях выскакивает наверх. А кроме того хорошо бы, чтобы выдавался сигнал на спикере.
Решение задачи: «Как сделать Frame активным или самым верхним окном?»
textual
Листинг программы
class ExitBox extends JDialog { ExitBox (JFrame parent) { super (parent, 'Exit', true); JLabel question = new JLabel ('Are you sure ?', JLabel.CENTER); JButton noButton = new JButton ('No'); JButton yesButton = new JButton ('Yes'); noButton.setMnemonic (KeyEvent.VK_N); yesButton.setMnemonic (KeyEvent.VK_Y); noButton.addActionListener (new ActionListener () { public void actionPerformed(ActionEvent e) { dispose (); } }); yesButton.addActionListener (new ActionListener () { public void actionPerformed(ActionEvent e) { System.exit (0); } }); JPanel topPanel = new JPanel (), bottomPanel = new JPanel (new FlowLayout (FlowLayout.RIGHT)); topPanel.setBorder (BorderFactory.createEtchedBorder ()); topPanel.add (question); bottomPanel.add (noButton); bottomPanel.add (yesButton); getContentPane ().add (topPanel, BorderLayout.CENTER); getContentPane ().add (bottomPanel, BorderLayout.SOUTH); pack (); setSize (getPreferredSize ()); setResizable (true); setLocationRelativeTo (parent); addWindowListener(new WindowAdapter() { public void windowDeactivated(WindowEvent e) { if(isVisible()){ toFront(); setCursor(Cursor.getDefaultCursor()); } } } ); } } ............ label = new JLabel ('', Label.LEFT); frame = new JFrame ('------------------'); frame.setSize (300, 100); frame.getContentPane().add ('Center', label); ExitBox theExitBox = new ExitBox (frame); theExitBox.setVisible (true); theExitBox.toFront(); theExitBox.setCursor(Cursor.getDefaultCursor()); ..............
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д