📜  p5.TableRow getString() 方法

📅  最后修改于: 2022-05-13 01:58:10.679000             🧑  作者: Mango

p5.TableRow getString() 方法

p5.js 中 p5.TableRow 的getString() 方法用于从表行的给定列中检索字符串值。列可以由其列 ID 或列名指定。

句法:

getString( column )

参数:此函数接受如上所述和如下所述的单个参数:

  • column:它是一个字符串或数字,表示列的名称或列的 ID。

返回值:此方法返回一个字符串,该字符串是从表的给定列中检索到的值。

以下示例说明了 p5.js 中的getString() 方法

示例 1:

Javascript
function setup() {
  createCanvas(600, 300);
  textSize(18);
  
  text("Click on the button to get all " + 
       "the values of the table", 20, 20);
  
  setBtn =
    createButton("Get all table values");
  setBtn.position(30, 40);
  setBtn.mouseClicked(showTable);
  
  // Create the table
  table = new p5.Table();
  
  // Add two columns
  table.addColumn("name");
  table.addColumn("id");
  
  // Add some rows to the table
  let newRow = table.addRow();
  newRow.setString("name", "Mary");
  newRow.setString("id", "id-1");
  
  newRow = table.addRow();
  newRow.setString("name", "Nezuko");
  newRow.setString("id", "id-12");
  
  newRow = table.addRow();
  newRow.setString("name", "Ishigaki");
  newRow.setString("id", "id-121");
  
  newRow = table.addRow();
  newRow.setString("name", "Sam");
  newRow.setString("id", "id-23");
  
  newRow = table.addRow();
  newRow.setString("name", "Max");
  newRow.setString("id", "id-45");
  
  newRow = table.addRow();
  newRow.setString("name", "Mikasa");
  newRow.setString("id", "id-132");
}
  
function showTable() {
  clear();
  text("The values each tableRow is " +
       "retrieved using the getString() method",
     20, 20);
  
  // Show all the columns present
  for (let c = 0; c < table.getColumnCount(); c++) {
    text(table.columns, 20 + 160 * c, 80);
  }
  
  // Show all the rows currently
  // present in the table
  for (let r = 0; r < table.getRowCount(); r++) {
      
    // Get the table row from the table
    let table_row = table.rows[r];
  
    // Getting the name column from
    // the table row
    text(table_row.getString("name"),
      20, 120 + 20 * r);
  
    // Getting the id column from
    // the table row
    text(table_row.getString("id"),
      180, 120 + 20 * r);
  }
}


Javascript
function setup() {
  createCanvas(500, 300);
  textSize(18);
  
  text("Click on the button to get " +
       "that value in the table", 20, 20);
    
  text("Enter row and column", 20, 60);
  
  rowInp = createInput();
  rowInp.position(30, 80);
  rowInp.size(30, 20);
  
  colInp = createInput();
  colInp.position(70, 80);
  colInp.size(30, 20);
  
  setBtn =
    createButton("Get value at row and column");
  setBtn.position(30, 110);
  setBtn.mouseClicked(getValueAt);
  
  // Create the table
  table = new p5.Table();
  
  setTableData()
}
  
function setTableData() {
  
  // Add 5 columns and rows to the table
  for (let i = 0; i < 5; i++) {
    table.addColumn("Column " + i);
    table.addRow();
  }
  
  for (let r = 0; r < 5; r++) {
    for (let c = 0; c < 5; c++) {
  
      // Set the value at the given
      // column and row of the table
      table.set(r, c, r + " : " + c);
    }
  }
}
  
function getValueAt() {
  clear();
  let rowToGet = int(rowInp.value());
  let colToGet = int(colInp.value());
  
  if (rowToGet < table.getRowCount() &&
      colToGet < table.getColumnCount()) {
    text("The value at row " + rowToGet +
         " and column " + colToGet +
         " is:", 20, 160);
  
    // Get the table row from the table
    let table_row = table.rows[rowToGet];
      
    // Print the column from the table row
    text(table_row.getString(colToGet),
         20, 180);
  }
  else
    text("Please enter correct row " + 
         "and column values", 20, 160);
  
  text("Click on the button to get " + 
       "that value in the table", 20, 20);
  text("Enter row and column", 20, 60);
}


输出:

示例 2:

Javascript

function setup() {
  createCanvas(500, 300);
  textSize(18);
  
  text("Click on the button to get " +
       "that value in the table", 20, 20);
    
  text("Enter row and column", 20, 60);
  
  rowInp = createInput();
  rowInp.position(30, 80);
  rowInp.size(30, 20);
  
  colInp = createInput();
  colInp.position(70, 80);
  colInp.size(30, 20);
  
  setBtn =
    createButton("Get value at row and column");
  setBtn.position(30, 110);
  setBtn.mouseClicked(getValueAt);
  
  // Create the table
  table = new p5.Table();
  
  setTableData()
}
  
function setTableData() {
  
  // Add 5 columns and rows to the table
  for (let i = 0; i < 5; i++) {
    table.addColumn("Column " + i);
    table.addRow();
  }
  
  for (let r = 0; r < 5; r++) {
    for (let c = 0; c < 5; c++) {
  
      // Set the value at the given
      // column and row of the table
      table.set(r, c, r + " : " + c);
    }
  }
}
  
function getValueAt() {
  clear();
  let rowToGet = int(rowInp.value());
  let colToGet = int(colInp.value());
  
  if (rowToGet < table.getRowCount() &&
      colToGet < table.getColumnCount()) {
    text("The value at row " + rowToGet +
         " and column " + colToGet +
         " is:", 20, 160);
  
    // Get the table row from the table
    let table_row = table.rows[rowToGet];
      
    // Print the column from the table row
    text(table_row.getString(colToGet),
         20, 180);
  }
  else
    text("Please enter correct row " + 
         "and column values", 20, 160);
  
  text("Click on the button to get " + 
       "that value in the table", 20, 20);
  text("Enter row and column", 20, 60);
}

输出:

在线编辑器: https://editor.p5js.org/

环境设置: https://www.geeksforgeeks.org/p5-js-soundfile-object-installation-and-methods/

参考: https://p5js.org/reference/#/p5.TableRow/getString