プロジェクトで GWT2.3 を使用しています。ユーザーが editableTextCell をクリックしたときに editableTextBox の幅を広げたい。問題は、列の幅が 200 ピクセルであることです。ユーザーが editableTextCell をクリックすると、その TextBox の幅は EditableTextCell で約 125px になり、列の幅と比較して小さくなります。
Celltableの列にEditTextCellを追加しました
Column stringColumn = new Column(new EditTextCell()) { // マイ コード }
cellTable.addColumn(stringColumn, "MyColumn"); cellTable.setColumnWidth(checkBoxColumn, 200, Unit.PX);
次の方法でテキストボックスの幅を広げようとしましたが、問題はテキストボックスで編集できず、フォーカスが失われないことです
@Override
public void onBrowserEvent(Context context, Element elem,Record object, NativeEvent event) {
String type = event.getType();
int editedTexBoxSize = (cellTable.getOffsetWidth()-100)/cellTable.getColumnCount();
if(elem.getInnerHTML().startsWith("<INPUT")){
String test = elem.getInnerHTML();
// test = <INPUT tabIndex=-1 value=P __eventBits="2048"></INPUT>
test= test.replace("value", " size="+editedTexBoxSize+" value");
// test = <INPUT tabIndex=-1 size=131 value=P __eventBits="2048"></INPUT>
elem.setInnerHTML(test);
}
super.onBrowserEvent(context, elem, object, event);
}
EditTextCellに表示されるTextBoxの幅を増やしたい(設定したい)は、列の幅と同じです。
解決策はありますか?