按钮不显示 Action 的文本用了setHideActionText(false)方法出现错误;
具体代码如下:
private JToolBar createToolBar(){//创建工具栏的方法
JToolBar toolBar=new JToolBar();
toolBar.setFloatable(false);
toolBar.setBorder(new BevelBorder(BevelBorder.RAISED));
//在工具栏添加图书信息添加图标
JButton bookAddButton=new JButton(MenuActions.BOOK_ADD);
//ImageIcon icon=CreatecdIcon.add("bookAdd")://创建图标方法
ImageIcon icon=new ImageIcon(Library.class.getResource("/bookAddtb.jpg"));//添加菜单栏图标
bookAddButton.setIcon(icon);
bookAddButton.setHideActionText(false); //这里出错,不知道是什么原因呀。
// bookAddButton.setToolTipText("图书信息添加");//图片上提示字
toolBar.add(bookAddButton);/************************************************************************************************************/
/*MenuActions.BOOK_ADD的方法代码是如下:/
private static class BookAddAction extends AbstractAction{
BookAddAction(){
super("图书信息添加",null);
putValue(Action.LONG_DESCRIPTION,"图书信息添加");
putValue(Action.SHORT_DESCRIPTION,"添加图书信息");
}
public void actionPerformed(ActionEvent e){
if(!frames.containsKey("图书信息添加")||frames.get("图书信息添加").isClosed()){
BookAddIFrame iframe=new BookAddIFrame();
frames.put("图书信息添加",iframe);
Library.addIFame(frames.get("图书信息添加"));
}
}
}大家帮我看看,这是什么出错。
具体代码如下:
private JToolBar createToolBar(){//创建工具栏的方法
JToolBar toolBar=new JToolBar();
toolBar.setFloatable(false);
toolBar.setBorder(new BevelBorder(BevelBorder.RAISED));
//在工具栏添加图书信息添加图标
JButton bookAddButton=new JButton(MenuActions.BOOK_ADD);
//ImageIcon icon=CreatecdIcon.add("bookAdd")://创建图标方法
ImageIcon icon=new ImageIcon(Library.class.getResource("/bookAddtb.jpg"));//添加菜单栏图标
bookAddButton.setIcon(icon);
bookAddButton.setHideActionText(false); //这里出错,不知道是什么原因呀。
// bookAddButton.setToolTipText("图书信息添加");//图片上提示字
toolBar.add(bookAddButton);/************************************************************************************************************/
/*MenuActions.BOOK_ADD的方法代码是如下:/
private static class BookAddAction extends AbstractAction{
BookAddAction(){
super("图书信息添加",null);
putValue(Action.LONG_DESCRIPTION,"图书信息添加");
putValue(Action.SHORT_DESCRIPTION,"添加图书信息");
}
public void actionPerformed(ActionEvent e){
if(!frames.containsKey("图书信息添加")||frames.get("图书信息添加").isClosed()){
BookAddIFrame iframe=new BookAddIFrame();
frames.put("图书信息添加",iframe);
Library.addIFame(frames.get("图书信息添加"));
}
}
}大家帮我看看,这是什么出错。
我的jdk也是1.6的.
public void setHideActionText(boolean hideActionText)
设置 hideActionText 属性,该属性确定按钮是否显示 Action 的文本。只有在按钮上已安装了 Action 时,此方法才有用。 参数:
hideActionText - 如果按钮的 text 属性不应该反映 Action 的文本,则该参数为 true;默认情况下为 false
从以下版本开始:
1.6
那个错误是jdk 版本不支持,要1.6才可以,
具体操作是:
1)先下载一个JDK 1.6版本安装JDK1.6(Update3) for 32位Windows
2)在MyEclipse 菜单->Windows->Proferences->java-> Installs Jre 重新设置JDK路径.这样就可以了。