在canSelect上选中SmartGWT菜单项显示(false)

在canSelect上选中SmartGWT菜单项显示(false),gwt,menuitem,smartgwt,Gwt,Menuitem,Smartgwt,我的SmartGWT应用程序有问题 我应该在菜单中显示不同的组织,用户可以在其中看到它们,并可以更改其组织 但问题是,他应该看到活跃的组织,看到特定的组织是活跃的,但他不能点击它 以下是我目前的代码: if(menuItemList[location].getAttribute("id").equals(USER_MANAGER.getUserOrganisation())){ menuItemList[location].setChecked(true); menuItemLi

我的SmartGWT应用程序有问题

我应该在菜单中显示不同的组织,用户可以在其中看到它们,并可以更改其组织

但问题是,他应该看到活跃的组织,看到特定的组织是活跃的,但他不能点击它

以下是我目前的代码:

if(menuItemList[location].getAttribute("id").equals(USER_MANAGER.getUserOrganisation())){
    menuItemList[location].setChecked(true);
    menuItemList[location].setCanSelect(false);
}else{
    menuItemList[location].setChecked(false);
    menuItemList[location].setCanSelect(true);
}
问题是,如果菜单项为“canSelect(false)”,SmartGWT不会显示选中图标(复选标记)

此外,生成的HTML代码中也没有区别,让我看看菜单项是否与活动组织相同

有人知道我做错了什么吗?

我找到了解决办法:

我想做的事情使用了错误的事件处理程序

因为我让MenuItem与DataSource一起生成,而不是直接生成,所以在代码执行时这些元素并不存在

之前我使用了
DrawHandler()
,但元素目前还没有ID(至少我认为是这样)

这就是为什么我的
if(){}else{}
不能像我希望的那样做

但是使用
成员schangedevent
,代码在元素获得其id后被执行,因此元素可以使用我的
用户管理器中的id检查其id

希望这能帮助有同样问题的人