我有有IndicatorTextBox.ui.xml文件的自定義文本框以及IndicatorTextBox.java文件。 向文本框中添加一個evenhadler很簡單。
這是我主要的java文件
@UiHandler("txtFirstName")
void onTxtFirstNameKeyUp(KeyUpEvent event){
validateFields();
}
我將如何添加處理程序,如果txtFirstName與標籤定製文本框,我加入到這個頁面? 因此,換句話說txtFirstnName不是@UiField TextBox txtFirstName但IndicatorTextField txtFirstName改爲。
的IndicatorTextBox.java文件看起來如下
import com.google.gwt.core.client.GWT;
公共類IndicatorTextField擴展複合實現HasText {
public interface Binder extends UiBinder<Widget, IndicatorTextField> {
}
private static final Binder binder = GWT.create(Binder.class);
public interface Style extends CssResource{
String textStyling();
String requiredInputLabel();
String colorNotValidated();
}
@UiField Style style;
@UiField Label label;
@UiField TextBox textBox;
public IndicatorTextField()
{
initWidget(binder.createAndBindUi(this));
}
public void setBackgroundValidateTextbox(boolean validated)
{
if(validated)
{
textBox.getElement().addClassName(style.colorNotValidated());
}
else
{
textBox.getElement().removeClassName(style.colorNotValidated());
}
}
@Override
public String getText() {
return label.getText();
}
@Override
public void setText(String text) {
label.setText(text);
}