listheader の onClick 中に postEvent 呼び出しを行います。ほとんどの場合、イベントはトリガーされ、適切に動作します。時々失敗します。記録されていない以下の2番目の方法内のロガーで確認しました。
public void onClick(Event event) {
if (event.getTarget() != this) {
return;
}
if (editor.isVisible()) {
return;
}
header.setVisible(false);
add.setVisible(false);
logger.info("onClick -> before post event");
if (getLabel() == null || getLabel().trim().length() == 0) {
**Events.postEvent(new Event(ON_EDIT_NEW_HEADER, this));**
}
logger.info("onClick -> after post event");
// Make the hbox and children visible
editor.setVisible(true);
// Set the textbox to have the current value of the listheader
combobox.setText(getLabel());
combobox.focus();
combobox.select();
}
@Listen("onEditNewHeader=dqlistheader")
public void onEditNewDQHeader(Event event) {
// Create a new empty column the user can use to create another new column if desired.
logger.info("Inside onEditNewDQHeader --- append header");
int order = header.getChildren().size();
ReportColumn column = new ReportColumn(reportType, order);
header.appendChild(new DQListHeader(column));
header.invalidate();
}
助言がありますか?