2017-03-20 36 views
0

控制台消息,我想展示一些消息在控制台的用户。我怎样才能做到这一点?现在,当用户检查复选框消息时,仅在框架上显示。我怎样才能在控制台上显示一些消息呢?节目上。当用户蜱复选框菜单项选择复选框菜单项

import java.awt.BorderLayout; 
import java.awt.EventQueue; 
import java.awt.event.ItemEvent; 
import java.awt.event.KeyEvent; 
import javax.swing.BorderFactory; 
import javax.swing.JCheckBoxMenuItem; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 
import javax.swing.JMenu; 
import javax.swing.JMenuBar; 

public class CheckBoxMenu extends JFrame { 

    private JLabel statusbar; 

    public CheckBoxMenu() { 

     initUI(); 
    } 

    private void initUI() { 

     createMenuBar(); 

     statusbar = new JLabel("On Progress..."); 
     statusbar.setBorder(BorderFactory.createEtchedBorder()); 
     add(statusbar, BorderLayout.SOUTH); 

     setTitle("JCheckBoxMenuItem"); 
     setSize(360, 250); 
     setLocationRelativeTo(null); 
     setDefaultCloseOperation(EXIT_ON_CLOSE); 
    } 

    private void createMenuBar() { 

     JMenuBar menubar = new JMenuBar(); 
     JMenu fileMenu = new JMenu("File"); 

     JMenu viewMenu = new JMenu("View"); 
     JCheckBoxMenuItem sbarMi = new JCheckBoxMenuItem("Show Statusbar"); 

     sbarMi.setSelected(true); 

     sbarMi.addItemListener((ItemEvent e) -> { 
      if (e.getStateChange() == ItemEvent.SELECTED) { 
       statusbar.setVisible(true); 
      } else { 
       statusbar.setVisible(false); 
      } 
     }); 

     viewMenu.add(sbarMi); 

     menubar.add(fileMenu); 
     menubar.add(viewMenu); 

     setJMenuBar(menubar); 
    } 

    public static void main(String[] args) { 

     EventQueue.invokeLater(() -> { 
      CheckBoxMenu ex = new CheckBoxMenu(); 
      ex.setVisible(true); 
     }); 
    } 
} 
+0

'System.out.println(“...”)'? – MadProgrammer

回答

0

你可以只使用一个System.out.println呼叫监听器,或者使用记录仪。

sbarMi.addItemListener((ItemEvent e) -> { 
    if (e.getStateChange() == ItemEvent.SELECTED) { 
     statusbar.setVisible(true); 
     // Using System.out 
     System.out.println("On Progress..."); 
     // Or using a logger (defined somewhere else, using Logger.getLogger or a logging framework.) 
     logger.info("On Progress."); 
    } else { 
     statusbar.setVisible(false); 
    } 
});