在GWT中,我使用的是CellTable.
当您将鼠标悬停在CellTable上时,它会突出显示每一行.
如何更改鼠标突出显示的行为?特别:
(我当前的黑客攻击是创建一堆1列宽的CellTables并将它们添加到VerticalPanel布局......创建一个幻觉,即有一个CellTable并根据光标突出显示每个网格.这是不是很好?为什么?表现?)
Bra*_*ski 17
你会注意到CellTable使用了ResourceBundle,这意味着所有的css样式都会被混淆......这使得覆盖样式变得更加困难.
CellTable构造函数实际上允许您覆盖默认的ResourceBundle.首先,您需要创建自己的资源包,如下所示:
public interface CellTableResources extends Resources {
public CellTableResources INSTANCE =
GWT.create(CellTableResources.class);
/**
* The styles used in this widget.
*/
@Source("CellTable.css")
CellTable.Style cellTableStyle();
}
Run Code Online (Sandbox Code Playgroud)
然后你需要创建自己的CSS文件.我建议将CellTable样式直接复制到项目中,并将其作为起点.您可以在此处找到它:http: //code.google.com/p/google-web-toolkit/source/browse/trunk/user/src/com/google/gwt/user/cellview/client/CellTable.css
确保首先注入样式,然后将它只是这样输入CellTable的构造函数:
CellTableResources.INSTANCE.cellTableStyle().ensureInjected();
myCellTable = new CellTable<T>(Integer.MAX_VALUE,CellTableResources.INSTANCE);
Run Code Online (Sandbox Code Playgroud)
具体来说,您需要调整这些样式:
值得注意的是,单元格表区分了"选定行"和"键盘选定行".所选行是选定的实际行(即通过SelectionModel).键盘选定行指的是当用户按下向上/向下键时突出显示的内容,但并不意味着实际选择了行(如果这样做有意义).