我想让行中的某些单元格不可编辑.到现在我的解决方案是当我创建列时,如果一个是readOnly,则创建一个TextCell,如果没有,我使用默认的Cell,可以是EditTextCell,DatePickerCell等.
这个问题是我不能把一些行readOnly和其他行没有.或者他们是所有字段readOnly或他们不是.
我该怎么做才能做到这一点
表:
Data1 | Data2 | Data3
--------------------------------------
readOnly | non-readOnly | readOnly
readOnly | readOnly | 非readOnly的
当我的意思是"readOnly"时,它可以"启用"或使其成为"TextCell"
celda = new TextInputCell();
Column<ObjetoDato, String> columna = new Column<ObjetoDato, String>(celda) {
@Override
public String getValue(ObjetoDato object) {
if(actual.getValorDefault()!=null && object.getValor(actual.getNombreCampo()).isEmpty()){
object.setValor(actual.getNombreCampo(), actual.getValorDefault());
return actual.getValorDefault();
}
return object.getValor(actual.getNombreCampo());
}
};
tabla.agregarColumna(columna, actual.getCaption());
columna.setFieldUpdater(new FieldUpdater<ObjetoDato, String>() {
@Override
public void update(int index, ObjetoDato object, String value) {
object.setValor(actual.getNombreCampo(), value);
new Scripter(object,actual.getComportamiento(),true);
tabla.actualizar();
Sistema.get().getIG().actualizarTotales();
}
});
Run Code Online (Sandbox Code Playgroud)
我已经尝试创建我的cutom单元并替换TextImputCell,但方法永远不会触发
celda = new FabriCel(); …Run Code Online (Sandbox Code Playgroud) GWT CellTable是否设计为仅显示记录并更新现有记录.
可以添加和删除CellTable中的记录,任何指向稳定解决方案的指针.
谢谢
我创建了一个包含300多行的CellTable,分为20页.我的菜单中有一个命令,允许用户根据某些列中的值突出显示行(类似于Excel中的条件格式).
我需要帮助的是更改当前页面上不在的行的行样式.
我查看了Celltable和SimplePager文档,但没有任何内容突然出现在我面前.我对GWT很新,所以任何帮助都会非常感激.
有没有人知道如何使用GWT 2.1M3的ImageResourceCell实现GWT CellTable?
我有以下但似乎无法找出添加ImageResourceCell的正确方法
CellTable<DeviceInfo> ct = new CellTable<DeviceInfo>();
// ct.setSelectionEnabled(true);
ct.setSelectionModel(setSelectionModel(ct));
ct.setPageSize(50);
// listData.addView(ct);
listData.addDataDisplay(ct);
ct.addColumn(new TextColumn<DeviceInfo>() {
@Override
public String getValue(DeviceInfo devInfo) {
return devInfo.getDeviceName();
}
}, "Name");
Run Code Online (Sandbox Code Playgroud)
//这不行
ct.addColumn(new IdentityColumn<DeviceInfo>(new ImageResourceCell()) {
@Override
public String getValue(DeviceInfo devInfo) {
return <Some imageResource>;
}
}, "Status");
Run Code Online (Sandbox Code Playgroud)
对此的任何帮助都会摇滚!谢谢.
我正在尝试创建CellTable类型的GWT 捕获事件DoubleClickEvent,但是当在UI中单击行时CellTable正确接收类型的事件时,在双击该行时ClickEvent它看不到任何事件DoubleClickEvent.
因此,如果我单击UI中的一行,则声明的处理程序ClickEvent被正确触发,但如果我双击未声明的处理程序,DoubleClickEvent则会触发.
我做错了什么或者CellTable根本无法处理DoubleClickEvent?在后一种情况下,什么是捕获表中双击的好方法?
下面是我的CellTable声明的代码:
CellTable<ServiceTypeUI> contentTable = new CellTable<ServiceTypeUI>(10, style);
contentTable.setSelectionModel(new SingleSelectionModel<ServiceTypeUI>());
contentTable.addHandler(new DoubleClickHandler() { // HANDLER NOT CORRECTLY TRIGGERED
@Override
@SuppressWarnings("unchecked")
public void onDoubleClick(DoubleClickEvent event) {
presenter.doubleClickHandler(event);
}
}, DoubleClickEvent.getType());
contentTable.addHandler(new ClickHandler() { // HANDLER CORRECTLY TRIGGERED
@Override
@SuppressWarnings("unchecked")
public void onClick(ClickEvent event) {
presenter.clickHandler(event);
}
}, ClickEvent.getType());
Run Code Online (Sandbox Code Playgroud)
我还尝试删除ClickEvent处理程序声明和SelectionModel声明,以避免任何捕获DoubleClickEvent事件并将其视为a ClickEvent但即使在这种情况下也未触发DoubleClickHandler.
CellTable<ServiceTypeUI> …Run Code Online (Sandbox Code Playgroud) 我开始使用CellTable小部件.我需要一个可编辑的文本单元格,所以我试过TextInputCell但令我沮丧的是,我找不到"价值变化处理程序".
如何在单元格内容发生变化时收到通知?
我的GWT Projekt中有一个CellTable,每行都有一个CheckBox.不知何故,我需要迭代cellTable中的所有行,并需要检查是否选中了每行的CheckBox.
我不知道该怎么做,我无法找到任何显示如何.
private Column<Article, Boolean> showPinColumn = new Column<Article, Boolean>(new CheckboxCell()) {
public Boolean getValue(Article object) {
return false;
}
};
Run Code Online (Sandbox Code Playgroud) 我试图使用他们的ListDataProvider排序示例作为参考在GWT中对列进行排序
http://code.google.com/webtoolkit/doc/latest/DevGuideUiCellTable.html#columnSorting
问题是我可以看到我的表列数据正在排序(通过使用调试器),但表永远不会刷新.查看上面链接中的示例,它们不会显式刷新显示.我在这里错过了什么吗?
谢谢.
我在使用GWT时遇到了问题.我正在构建一个cellTable的列,我希望单元格的样式取决于该单元格的值:
Column<MyProxy, MyProxy> editButtonColumn = new Column<MyProxy, MyProxy>(new ActionCell<MyProxy>("", new ActionCell.Delegate<MyProxy>() {
@Override
public void execute(MyProxy record) {
if (object.isEditable()) {
doSomething(record);
}
}
})) {
@Override
public MyProxy getValue(MyProxy object) {
if (object.isEditable()) {
this.setCellStyleNames("editButtonCell");
}
return object;
}
};
Run Code Online (Sandbox Code Playgroud)
我已经在调试模式下检查了正确应用"editButtonCell"样式.但是在生成的HTML中,每次为FIRST ROW都缺少样式......它看起来像一个GWT错误,但也许你们有更好的解释.
我有一个CellTable,需要一个不同类型的子行。类似于http://showcase2.jlabanca-testing.appspot.com/#!CwCustomDataGrid
我不希望使用DataGrid,因为我了解它具有固定的高度,并且我的表在动态高度下看起来更好。
我试图扩展CellTable然后写
public void renderRowValues(SafeHtmlBuilder sb,
java.util.List<ShipmentLeg> values,
int start,
SelectionModel<? super ShipmentLeg> selectionModel){
super.renderRowValues(sb, values, start, selectionModel);
GWT.log("HELLO");
}
Run Code Online (Sandbox Code Playgroud)
有什么好的策略可以做到这一点?注意:在此代码中,永远不会调用GWT.log,因为在超级代码中会引发弃用错误
干杯
我的任务是创建一个带有控件的表来添加新行.这个典型的控件应该包含相应的TextEdits和一个"添加新行"按钮.
我使用CellTable.
我可以单独创建这个"添加小部件",只需在某个面板中组合按钮和必要的字段,但我想尝试将其绑定到表中.我想用CellTable来制作它.为此,我尝试使用CellTable的标题.我创建了一个Header并添加了EditCellText和ButtonCell.我有两个问题:
[1]最后,第一个问题是:如何在CellTable的标题中添加一个按钮,以及如何处理该按钮上的点击?该按钮应该看起来像一个按钮,而不仅仅是一些点击区域.
[2]可能还有另一种方法可以完成我的任务.是否可以创建CellTable,其中不同的行包含不同的按钮?即第一行保持按钮"添加",所有其他行按住"删除"按钮.GWT可以这样做吗?
[3]还有一个问题.目前,我使用Java代码描述了我的CellTable的结构.即我在创建父窗口小部件时手动创建和添加列和标题对象.是否可以用XML表示我的CellTable的结构,即使用一些mySpecialCellTable.ui.xml文件?
我是GWT应用程序开发的初学者.我在线搜索过CellTable.除了一些例子之外没有任何解释.
现在我真的想知道DataProvider在CellTable中究竟做了什么?还想了解更多关于celltable的信息,以及是否有相同的资源?
celltable ×12
gwt ×12
css ×1
dataprovider ×1
double-click ×1
header ×1
highlight ×1
java ×1
sorting ×1