Recursion_ListToListView3
  • Clear ListView
  • textArea1.clear();
    label1.setText("");
    lvwList1.getItems().clear();
Code:

package javafxtemplate1;
//Recursion_ListToListView3.htm
//textProperty().addListener Listview Label
import javafx.application.Application;
import javafx.beans.binding.Bindings;
import javafx.beans.binding.StringBinding;
import javafx.beans.property.ListProperty;
import javafx.beans.property.SimpleListProperty;
import javafx.collections.FXCollections;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.stage.Stage;
import javafx.scene.control.Label;
import javafx.scene.control.ListView;
import javafx.scene.control.TextArea;
import javafx.scene.control.TextField;


/**
*
* @author Manas9
*/
public class JavaFXTemplate1 extends Application {
TextArea textArea1= new TextArea ();
TextArea textArea2= new TextArea ();
String newLine = "\n";static int xx1 ;
TextField textField = new TextField ();
Label label1 = new Label();
ListProperty<String> listProperty = new SimpleListProperty<>();
ListView<String> lvwList1 = new ListView<String>();
@Override
public void start(Stage primaryStage) throws Exception {
//

//lvwList1 settings
lvwList1.setLayoutX(170); lvwList1.setLayoutY(60);
lvwList1.setMaxWidth(180);lvwList1.setMaxHeight(180);
Group groot1 = new Group();
label1.setText("Enter An Integer");
label1.setLayoutX(10);label1.setLayoutY(30);
Button calculate = new Button("Calculate");
calculate.setLayoutX(80);calculate.setLayoutY(0);
Button btn = new Button();
btn.setLayoutX(10);btn.setLayoutY(0);
textArea1.setLayoutX(10);textArea1.setLayoutY(60);
textArea1.setPrefHeight(180);textArea1.setPrefWidth(160);
textArea1.setPromptText("textarea1");
//

textField .setLayoutX(160);textField .setLayoutY(20);
textField.setPromptText("Enter an Integer");
/*
textField.textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
label1.setText("you Entered "+newValue);
xx1 = Integer.parseInt(newValue);
textArea1.appendText("factorials "+String.valueOf(recursion(xx1)));
//textArea2.appendText("factorials "+String.valueOf(recursion(xx1)));
}
});
//
*/
calculate.setOnAction(e->ctrlBtnClicik());
btn.setText(" Clear");
btn.setOnAction(e->clearArea()) ;

groot1.getChildren().addAll(label1, textField, textArea1,lvwList1, calculate, btn);

//Scene scene = new Scene(groot, 350, 150);
Scene scene = new Scene(groot1, 350, 250);
primaryStage.setScene(scene);
primaryStage.setTitle("Linked Data:: Recursions");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
private int recursion(int n1) {
int x, sum=1, fact=n1;
//StringBinding strBind1= Bindings.selectString(textField.textProperty());
fact= sum;
if (n1==1||n1==0) { return n1; }
else {
print(n1);
sum = sum *n1;
//listProperty bind :: prints results in single string
// listProperty.set(FXCollections.observableArrayList("f- head sum :: "+ n1 + " * "+ fact+ " = "+ sum+ newLine));
//lvwList1.itemsProperty().bind(listProperty);
//getItems will add data in newline
//lvwList1.getItems().addAll("f- head sum :: "+ n1 + " * "+ fact+ " = "+ sum+ newLine);
//
lvwList1.getItems().addAll("f- head sum :: "+ n1 + " * "+ fact+ " = "+ sum);
textArea1.appendText("f- head sum :: "+ n1 + " * "+ fact+ " = "+ sum+ newLine);
return n1 * recursion(n1-1);
}

}
private int recursion_1 ( int n, int sum )
{
int x, fact = sum;
if(n==1)
{ return sum; }
else
{
print(n);
sum = sum *n;
textArea1.appendText("f- tail sum :: "+ n + " * "+ fact+ " = "+ sum+ newLine);
return recursion_1(n-1,sum);
}

}
private void print(int n1)
{
textArea1.appendText("f-head proessed :: "+ n1 +newLine);
}

private void ctrlBtnClicik(){
int xy1=Integer.parseInt(textField.getText());
label1.setText("you Entered "+ xy1);
//gcd(xy1, 3);
String strClick= ("factorials "+String.valueOf(recursion(xy1)));
textArea1.appendText(strClick);
lvwList1.getItems().addAll(strClick);
}
private void clearArea()
{
textArea1.clear();
label1.setText("");
lvwList1.getItems().clear();
}
}

/*
Convert using Integer.toString(int)
Convert using String.valueOf(int)
Convert using new Integer(int).toString()
Convert using String.format()
*/

Displays:

Clearing ListView contents

Recalculated with new integers