私はJava FXMLで電卓アプリケーションを構築しています。マウスのクリック以外の機能を追加するには、キーボードのキー機能を追加して、キーボードの数字や文字を入力して計算機の画面に表示させることができます。私は+記号を得るために、MacBookProを使用しています。私はキーの組み合わせのCMDと+キーを押す必要があります。私は以下の方法で試しましたが、うまくいきません。 エスケープとバックスペースのキーはうまくいきます。でも、私はちょうどのバックスラッシュとのマイナスのキーをチェックしようとしましたが、まだ動作していません。 (Main.java、Controller.javaとFXMLDocument.fxmlを含ん)Java FXMLのキーの組み合わせの例が必要
誰もが唯一で働いキーの組み合わせを作成する方法を手伝ってくれるのJavaはFXML
public class FXML_MainController implements Initializable {
KeyCombination plus = new KeyCodeCombination(KeyCode.PLUS, KeyCombination.SHORTCUT_DOWN);
@FXML
private Label displayTextBottom;
@FXML
void btnOnKeyPressed(KeyEvent event) {
if (plus.match(event)) {
displayTextBottom.setText(event.getText());
System.out.println("+ pressed");
event.consume();
}
switch (event.getCode()) {
case SLASH:
displayTextBottom.setText(event.getText());
break;
case MINUS:
displayTextBottom.setText(event.getText());
break;
case ESCAPE:
displayTextBottom.setText("");
break;
case BACK_SPACE:
if (displayTextBottom.getText().length() > 0) {
StringBuilder removing = new StringBuilder(displayTextBottom.getText());
removing.deleteCharAt(displayTextBottom.getText().length() - 1);
String removed = removing.toString();
displayTextBottom.setText(removed);
setDisplayFontSizeBottom();
}
break;
default:
System.out.println("error");
}
}
誰がfxmlで 'btnOnKeyPressed'ですか? – Elltz
... onKeyPressed = "#btnOnKeyPressed" .... – Ahmadali