• title: JComboBoxの値をMouseWheelで変更 tags: [JComboBox, MouseWheelListener] author: aterai pubdate: 2004-11-15T02:34:50+09:00 description: JComboBoxにフォーカスがある場合、その値をMouseWheelの上下で変更します。

概要

JComboBoxにフォーカスがある場合、その値をMouseWheelの上下で変更します。

サンプルコード

JComboBox<String> combo = makeComboBox();
combo.addMouseWheelListener(new MouseWheelListener() {
  @Override public void mouseWheelMoved(MouseWheelEvent e) {
    JComboBox source = (JComboBox) e.getComponent();
    if (!source.hasFocus()) {
      return;
    }
    int ni = source.getSelectedIndex() + e.getWheelRotation();
    if (ni >= 0 && ni < source.getItemCount()) {
      source.setSelectedIndex(ni);
    }
  }
});
View in GitHub: Java, Kotlin

解説

上記のサンプルでは、一番上のコンボボックスにMouseWheelListenerが設定され、マウスホイールの上下回転に反応して、表示される内容が順次変更されるようになっています。

コメント