2012-11-19 25 views
0

我有一个Swing应用程序,当我运行VoiciOver Utility时,它将Swing应用程序宣告为Java。Voice over Utility anounce Swing application as Java

例如:

import javax.swing.*; 
import java.awt.event.*; 
public class Menu extends JFrame{ 
public Menu() 
{ 
    super("Menu example"); 

    JMenu file = new JMenu("File"); 
    file.setMnemonic('F'); 
    JMenuItem newItem = new JMenuItem("New"); 
    newItem.setMnemonic('N'); 
    file.add(newItem); 
    JMenuItem openItem = new JMenuItem("Open"); 
    openItem.setMnemonic('O'); 
    file.add(openItem); 
    JMenuItem exitItem = new JMenuItem("Exit"); 
    exitItem.setMnemonic('x'); 
    file.add(exitItem); 

    //adding action listener to menu items 
    newItem.addActionListener(
     new ActionListener(){ 
      public void actionPerformed(ActionEvent e) 
      { 
       System.out.println("New is pressed"); 
      } 
     } 
    ); 
    openItem.addActionListener(
     new ActionListener(){ 
      public void actionPerformed(ActionEvent e) 
      { 
       System.out.println("Open is pressed"); 
      } 
     } 
    ); 
    exitItem.addActionListener(
     new ActionListener(){ 
      public void actionPerformed(ActionEvent e) 
      { 
       System.out.println("Exit is pressed"); 
      } 
     } 
    );      
    JMenuBar bar = new JMenuBar(); 
    setJMenuBar(bar); 
    bar.add(file); 

    getContentPane(); 
    setSize(200, 200); 
    setVisible(true); 
} 

public static void main(String[] args) 
{ 
    Menu app = new Menu(); 
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
} 
} 

如果我们试图与VoiceOver实用工具这个例子中,它宣布应用程序“菜单中的java示例窗口”。

有人能帮我解决这个问题吗?

回答

0

您可以设置com.apple.mrj.application.apple.menu.about.name属性来更改显示的名称,如here所示。