Open In App

p5.TableRow setString() Method

Improve
Improve
Like Article
Like
Save
Share
Report

The setString() method of p5.TableRow in p5.js is used to store the given String value to the given column of the table row. The column can be specified by its column ID or column name.

Syntax:

setString( column, value )

Parameters: This method accepts two parameters as mentioned above and described below: 

  • column: It is a String or Number that denotes the column name or ID of the column.
  • value: It is a String that specifies the value that has to be stored.

The example below illustrates the setString() method in p5.js:
Example 1:

javascript




function setup() {
  createCanvas(500, 300);
  textSize(18);
  
  text("Click the button to modify the table",
       20, 20);
  
  setBtn =
    createButton("Change Status");
  setBtn.position(30, 60);
  setBtn.mouseClicked(modifyTableData);
  
  // Create the table
  table = new p5.Table();
  
  // Add the columns and rows
  table.addColumn("destination");
  table.addColumn("visited");
  
  // Add information to each column
  // using the setString() method
  let row = table.addRow();
  row.setString("destination",
                "Japan");
  row.setString("visited", "Yes");
  
  row = table.addRow();
  row.setString("destination",
                "Malaysia");
  row.setString("visited", "No");
  
  row = table.addRow();
  row.setString("destination",
                "Switzerland");
  row.setString("visited", "No");
  
  row = table.addRow();
  row.setString("destination",
                "Venice");
  row.setString("visited", "No");
  
  showTable();
}
  
function modifyTableData() {
  // Loop through all the rows
  // in the table
  for (let r = 0; r < table.getRowCount(); r++) {
  
    // Get a row from the table
    let tableRow = table.rows[r];
  
    // Change the string of the visited
    // column of the table row
    if (tableRow.getString("visited") == "No")
      tableRow.setString("visited", "Yes");
  }
  
  showTable();
}
  
function showTable() {
  clear();
  text("The value is modified using the " +
       "setString() method", 20, 20);
  
  // Show all the columns present
  for (let c = 0; c < 2; c++) {
    text(table.columns, 20 + 160 * c, 110);
  }
  
  // Show all the rows currently
  // present in the table
  for (let r = 0; r < table.getRowCount(); r++) {
    for (let c = 0; c < 2; c++) {
      text(table.getString(r, c),
           20 + 160 * c, 140 + 20 * r);
    }
  }
}


Output:

Example 2:

javascript




function setup() {
  createCanvas(500, 300);
  textSize(18);
  
  setBtn = createButton("Toggle Strings");
  setBtn.position(30, 40);
  setBtn.mouseClicked(modifyTableData);
  
  // Create the table
  table = new p5.Table();
  
  for (let i = 0; i < 10; i++) {
    table.addColumn();
    table.addRow();
  }
  
  createTable();
}
  
function createTable() {
  
  // Loop through all the rows and columns
  // in the table and set their initial values
  for (let r = 0; r < table.getRowCount(); r++) {
    for (let c = 0; c < table.getColumnCount(); c++) {
  
      // Get a row from the table
      let tableRow = table.rows[r];
  
      if ((r + c) % 3 == 0)
  
        // Set the column to the given value 
        tableRow.setString(c, "*");
      else
  
        // Set the column to the given value 
        tableRow.setString(c, "~");
    }
  }
  
  showTable();
}
  
function modifyTableData() {
  // Loop through all the rows and columns
  // in the table and change their values
  // depending on the previous string
  for (let r = 0; r < table.getRowCount(); r++) {
    for (let c = 0; c < table.getColumnCount(); c++) {
  
      // Get a row from the table
      let tableRow = table.rows[r];
  
      if (tableRow.getString(c) == "~")
  
        // Set the column to the given value 
        tableRow.setString(c, "*");
      else
  
        // Set the column to the given value 
        tableRow.setString(c, "~");
    }
  }
  
  showTable();
}
  
function showTable() {
  clear();
  text("The value is modified using the " +
       "setString() method", 20, 20);
  
  // Show all the rows currently
  // present in the table
  for (let r = 0; r < table.getRowCount(); r++) {
    for (let c = 0; c < table.getColumnCount(); c++) {
      text(table.getString(r, c),
           20 + 40 * c, 80 + 20 * r);
    }
  }
}


Output:

Online editor: https://editor.p5js.org/
Environment Setup: https://www.geeksforgeeks.org/p5-js-soundfile-object-installation-and-methods/
Reference: https://p5js.org/reference/#/p5.TableRow/setString



Last Updated : 18 Sep, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads