gpt4 book ai didi

java - 删除 JavaFX 中的文本行

转载 作者:行者123 更新时间:2023-12-02 10:11:27 25 4
gpt4 key购买 nike

我已经使用 JavaFX 大约两周了,在删除行时,我遇到了 TextArea 问题。我将以下信息附加到 TextArea,但如何删除特定行?

  • 玛丽·约翰逊 44.33
  • 劳拉·史密斯 55.12
  • 詹姆斯·查尔斯 23.56

如何删除包含 Laura Smith 55.12 的行并将其他两个保留在那里?我得到了第一个角色,但我不知道接下来该去哪里。请帮忙。

for (String line : reservationBox.getText().split("\n")) {
if(line.contains(nameText.getText() + " " + priceText.getText())) {
char firstCharacter = nameText.getText().charAt(0); //get character of the first letter of the name
reservationBox.deleteText( ?? );
}
}

最佳答案

  1. 初始化两个变量,用作开始索引和结束索引。
  2. 第一个索引将引用我们需要删除的单词的第一个字母。
  3. 最后一个索引将是起始索引与我们需要的单词长度之和减 1。
  4. 使用deleteText(startIndex, endIndex)删除文本。

看一下下面的代码:

    public void start(Stage primaryStage) throws Exception {

int indexStart = 0; //initialize variables
int indexEnd = 0;

TextArea textArea = new TextArea();
textArea.setText("123\nhello\nabc\ntwentyone\n"); //initialize text in box

VBox vbox = new VBox(textArea);

Scene scene = new Scene(vbox, 200, 100);
primaryStage.setScene(scene);
primaryStage.show();

for(String line : textArea.getText().split("\n")){
if(line.contains("abc")) { //change this to whatever you need
indexStart = textArea.getText().indexOf(line.charAt(0));
indexEnd = indexStart + line.length()-1;
}

textArea.deleteText(indexStart, indexEnd); //Delete between indexes
}
}

public static void main(String[] args) {
Application.launch(args);
}

关于java - 删除 JavaFX 中的文本行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54975517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com