gpt4 book ai didi

gwt - 在 GWT 2.2 CellTable 中设置列​​的宽度而不剪切 TextInputCell?

转载 作者:行者123 更新时间:2023-12-03 02:54:17 24 4
gpt4 key购买 nike

我有一个相当奇怪的问题。我正在使用 GWT 2.2 版本中的 CellTable。 CellTable 配置为固定布局。我在表中有一个可编辑列(TextInputCell)。

我目前正在 CellTabel 上使用 setColumnWidth 方法来固定列的宽度。这很有效,但它不会对输入文本元素强制执行宽度约束。结果,编辑器输入字段溢出到列下方,给人一种被剪掉的印象。

下面是 GWT 文档中的代码示例,经过修改以演示该问题。请注意,名称字段未调整大小并溢出到表内。

公共(public)类 Trial 实现 EntryPoint{ 私有(private)静态类 { 私有(private)静态 int nextId = 0;

    private final int id;
private final String address;
private Date birthday;
private String name;
private Long number;

public Contact( String name, Date birthday, String address, Long number )
{
nextId++;
this.id = nextId;
this.name = name;
this.birthday = birthday;
this.address = address;
this.number = number;
}
}

private static final List<Contact> CONTACTS = Arrays.asList( new Contact( "John", new Date( 80, 4, 12 ), "123 Fourth Avenue", 0L ), new Contact( "Joe",
new Date( 85, 2, 22 ), "22 Lance Ln", 1L ), new Contact( "George", new Date( 46, 6, 6 ), "1600 Pennsylvania Avenue", 2L ) );


public void onModuleLoad( )
{
final CellTable<Contact> table = new CellTable<Contact>( 10 );
table.setWidth( "60px", true );
ListDataProvider<Contact> listPrvdr;

final TextInputCell nameCell = new TextInputCell( );
Column<Contact, String> nameColumn = new Column<Contact, String>( nameCell )
{
@Override
public String getValue( Contact object )
{
return object.name;
}
};
table.addColumn( nameColumn, "Name" );
table.setColumnWidth( nameColumn, "60px" );

nameColumn.setFieldUpdater( new FieldUpdater<Contact, String>( )
{
public void update( int index, Contact object, String value )
{
object.name = value;
table.redraw( );
}
} );

listPrvdr = new ListDataProvider<Contact>( );
listPrvdr.addDataDisplay( table );
RootPanel.get( ).add( table );

listPrvdr.getList( ).addAll( CONTACTS );
}

}

enter image description here

我错过了什么?如何对输入字段(而不仅仅是主机列)强制宽度约束?

最佳答案

据我了解,私有(private)成员

private static Template template;
TextInputCell(以及 EditTextCell)内部的

关心内部输入元素的 View 。我确实从 AbstractEditableCell 扩展了我的类(就像 TextInputCell 所做的那样)并分配了我自己的模板,例如:

@Template("<input type=\"text\" value=\"{0}\" tabindex=\"-1\" size=\"{1}\" maxlength=\"{1}\" style=\"{2}\"></input>")

关于gwt - 在 GWT 2.2 CellTable 中设置列​​的宽度而不剪切 TextInputCell?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5182245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com