我正在尝试制作一个基本的文本编辑器,并添加一些标准选项,如粗体和斜体。
我在下面创建了“styleSetter”函数,但只有第一个调用(即第一个ToggleButton)执行它应该执行的操作。另一个不做任何事情,虽然他们似乎确实将textarea的style属性更改为给定的String。 我希望我已经解释得很好,我做错了什么?
public void styleSetter(ToggleButton tb, TextArea ta , String on, String off){
if(tb.isSelected()) {
ta.setStyle(on);
} else {
ta.setStyle(off);
}
}
@FXML public void onBold(){
model.styleSetter(bold, textArea, "-fx-font-weight: bold", "-fx-font-weight: normal");
}
@FXML public void onItalic(){
model.styleSetter(italic, textArea, "-fx-font-style: italic", "-fx-font-style: normal");
}
@FXML public void onStrikeThrough(){
model.styleSetter(strikeThrough, textArea, "-fx-strikethrough: true", "-fx-strikethrough: false");
}
@FXML public void onUnderline(){
model.styleSetter(underline, textArea, "-fx-underline: true", "-fx-underline: false");
}