我試圖提示用戶輸入來自JOptionPane以更改JTextArea的字體大小,如下所示,爲「控制檯」。更改JTextArea字體大小的問題
問題:
然而,JOptionPane中沒有顯示當我點擊大小JMenu的項目。
代碼:與JOptionPane的
Font font = new Font("Arial", Font.PLAIN, 12);
panel = new JPanel();
panel.setLayout(new BorderLayout());
add(panel, BorderLayout.CENTER);
JTextArea console = new JTextArea();
console.setLineWrap(true);
console.setWrapStyleWord(true);
console.setEditable(false);
console.setFont(font);
JScrollPane scroll = new JScrollPane(console);
scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
panel.add(scroll, BorderLayout.CENTER);
JMenuBar bar = new JMenuBar();
panel.add(bar, BorderLayout.NORTH);
JMenu size = new JMenu("Size");
size.addActionListener(new ActionListener() {
@Override public void actionPerformed(ActionEvent e) {
String fontSize = JOptionPane.showInputDialog(panel, "New font size, 6 or larger:", "Set Font Size", JOptionPane.OK_CANCEL_OPTION);
Font newFont = font.deriveFont(Integer.parseInt(fontSize));
console.setFont(newFont);
}
});
bar.add(size);
無法更新Jtextarea中的字體。已經在http://stackoverflow.com/questions/2488384/setting-fonts-in-a-jtextarea?rq=1 – VinuBibin
@VinuBibin回答好的,謝謝,但是如果你閱讀我的問題,它與JOptionPane點擊時不顯示大小JMenu項目 –
使用'JMenuItem'而不是'JMenu' – copeg