编辑:
问题是调用像jcc.setSelectedIndex(-1)
这样的方法会触发附加到组合框的任何侦听器。我的印象只是用户事件会导致它们。
答案 0 :(得分:1)
您使用侦听器创建了textFiled,在您的情况下会对其进行反应:
fontpkr.addActionListener(ev -> {
//make sure only enabled when text box is selected
DTextModel dtm = (DTextModel)Ctrl.getSelectedModel();
dtm.setFontIdxAndNotify(fontpkr.getSelectedIndex());
});
如果我们只是通过内部方法:
setFontIdxAndNotify(..)
来电 - > Ctrl.server.bcastFontIdxChange(i)
并在最后:
public void bcastFontIdxChange(int newIdx) {
try {
os.writeObject(Pkt.FONT_CHANGE);
os.writeInt(newIdx);
os.flush();
} catch (IOException e) {
System.out.println(e);
}
}
有错误的枚举 Pkt.FONT_CHANGE