1

JavaFX アプリケーションで奇妙なことが起こり、非タッチスクリーン Ubuntu 13.04 で問題なく動作しました。OnMouseClickedListenerおよびonActionやonTouchなどのその他のイベントはEvents をキャッチしませんが、CSS スタイルのボタンは、タッチすると選択済みに変化します。そのため、アプリケーションはそのボタンがタッチされたことを認識します。onAction リスナーでも奇妙なことが起こります。タッチ イベントは、アプリの「下」に配置されたアプリケーションによってキャッチされます。

タッチリスナーを追加するコード:

btn1.setOnTouchPressed(new EventHandler<TouchEvent>() {
        @Override
        public void handle(TouchEvent touchEvent) {
            // deal with touch
            touchEvent.consume();
        }
    });

タッチ リスナーとアクション リスナーを追加するコード:

<Button fx:id="btn2" onMouseClicked="#clicksHandler" text="btn"/>
<Button fx:id="btn3" onAction="#actionHandler" text="btn"/>

そして、このイベントのハンドラー:

@FXML
private  void actionHandler(Event event){
    // Handle event
    event.consume();
}

@FXML
private  void clicksHandler(MouseEvent event){
    // Handle event
    event.consume();
}

この問題を解決するのを手伝ってください。


回避策が見つかりました: ubuntu 12.04 LTS をインストールします。イベントはOnMouseClickedListenerによって処理されます。

4

0 に答える 0