-1
A
回答
1
我不知道你爲什麼要這樣做。這可能不會完全給你想要的東西,但它確實改變了插入的大小。請注意,大字符仍將被剪裁在包含TextField的範圍內。
m和a之間的小線是小插入符號。圖像傳送到計算器降低清晰度,所以很難看到:
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class BiglyCaret extends Application {
@Override
public void start(Stage stage) throws Exception {
TextField bigCaretTextField = new TextField("Big Caret");
bigCaretTextField.setSkin(
new TextFieldCaretControlSkin(
bigCaretTextField,
2
)
);
TextField smallCaretTextField = new TextField("Small Caret");
smallCaretTextField.setSkin(
new TextFieldCaretControlSkin(
smallCaretTextField,
0.5
)
);
TextField normalTextField = new TextField("Standard Caret");
VBox layout = new VBox(
10,
bigCaretTextField,
smallCaretTextField,
normalTextField
);
layout.setPadding(new Insets(10));
stage.setScene(new Scene(layout));
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
TextFieldCaretControlSkin.java
注意,這個使用了Java 8私有API類,因此它贏得了」 t適用於Java 9.在Java 9中,TextFieldSkin將成爲公共API(移至javafx
包而不是com.sun
包),因此如果更改包,它可能在Java 9中起作用。
import com.sun.javafx.scene.control.skin.TextFieldSkin;
import javafx.scene.control.TextField;
public class TextFieldCaretControlSkin extends TextFieldSkin {
public TextFieldCaretControlSkin(TextField textField, double scale) {
super(textField);
setScale(scale);
}
private void setScale(double scale) {
caretPath.setScaleX(scale);
caretPath.setScaleY(scale);
}
}
這個答案是基於這樣的回答:
+0
這很完美。謝謝! – Aniru
相關問題
- 1. JavaFX:更改TextField中的字體和大小
- 2. 如何在TextField AS3中更改大小?
- 3. 爲RichTextBox更改插入符號大小
- 4. java改變Textfield的大小
- 5. 如何更改javafx散點圖中圖表符號的大小?
- 6. 更改JavaFX TableView的字體大小
- 7. SmartGWT TextField更改插入位置
- 8. TextField在Flex中的大小
- 9. JavaFX 2.1更改ScrollPane滾動條大小
- 10. javafx更改切換組更改時的textField值
- 11. 在JavaFX中更改ListView的字體大小
- 12. 基於更改javaFX中的滑塊更新textField
- 13. 在QTabWidget中更改制表符大小
- 14. 在TextField中格式化字符串JavaFX
- 15. 如何在TextField中格式化字符串而不更改JavaFX的值
- 16. JavaFx元素,根據窗口大小動態更改大小
- 17. AjaxEditableLabel TextField大小
- 18. 在JavaFX中更改場景而不調整窗口大小
- 19. 更改javafx中圖表中標籤的字體大小
- 20. 更改列中的輸入大小
- 21. 無法更改在Xcode 8中使用矩陣的大小類
- 22. onAction爲javafx中的textfield
- 23. 如何在C++中更改拉丁UTF-8字符串的大小寫?
- 24. 如何更改JavaFX 2.1中的光標圖像大小?
- 25. 如何更改JavaFX中顏色選擇器的圖標大小?
- 26. 如何更改JavaFX中ListView的字體大小?
- 27. 如何更改BubbleChart javafx中的氣泡大小
- 28. 如何更改javafx中的文本字體大小?
- 29. 在Textfield中編寫UTF-8字符As3
- 30. 在TextField中的字符之間自動插入空格
你或許可以[插入符路徑(http://stackoverflow.com/questions/27315861/hide -input-caret-of-textfield-in-javafx8),如鏈接答案中所示。 – jewelsea