Inline- und externe Eingaben

Eingaben können inline oder extern gerendert werden. Dadurch wird gesteuert, ob die Verbinder für Werteingaben innerhalb des Blocks (inline) oder am äußeren Rand (extern) gerendert werden und ob Eingaben in derselben oder in verschiedenen Zeilen gerendert werden.

Inline- und externe Varianten des Blocks „Zähle mit x von Wert zu Wert, führe aus“. In der Inline-Variante hat der Block zwei Zeilen: In der oberen Zeile steht „count with x from value to value“ (mit x von Wert zu Wert zählen) und in der unteren Zeile „do statement“ (Anweisung ausführen).
Die Werteingaben sehen aus wie Puzzleteile, die aus der Oberzeile ausgeschnitten wurden.
Im externen Block gibt es vier Zeilen: „count with x“, „from value“, „to value“ und „do statement“. Die Werteingaben befinden sich am Ende der zweiten und dritten Zeile und sehen aus wie weibliche Puzzleverbindungen.

In der Blockdefinition kann ein optionaler boolescher Wert angegeben werden, mit dem gesteuert wird, ob Eingaben inline sind oder nicht.

JSON

{
  // ...,
  "inputsInline": true
}

JavaScript

init: function() {
  // ...
  this.setInputsInline(true);
}

Wenn dieser boolesche Wert auf true gesetzt ist (Inline-Eingaben):

  • Die Verbinder für Werteingaben werden innerhalb des Blocks gerendert.
  • Anweisungseingaben werden in einer eigenen Zeile gerendert.
  • Dummy-, Zeilenende- und Werteingaben werden alle in derselben Zeile gerendert. Eine Eingabe, die auf eine Anweisung oder eine Zeilenende-Eingabe folgt, wird jedoch in einer neuen Zeile gerendert.

Wenn der Wert auf false gesetzt ist (externe Eingaben):

  • Die Verbinder für Werteingaben werden am äußeren Rand des Blocks gerendert.
  • Alle Eingaben werden in einer eigenen Zeile gerendert. Eine Zeilenende-Eingabe, die auf eine Dummy-Eingabe folgt, wird jedoch in derselben Zeile wie die Dummy-Eingabe gerendert.

Wenn Sie sich das nicht vorstellen können, erstellen Sie Blöcke in den Blockly Developer Tools und wählen Sie verschiedene Einstellungen für das inputs Drop-down-Menü aus (automatic, external, inline).

Wenn dieser boolesche Wert nicht definiert ist, verwendet Blockly einige Heuristiken, um zu erraten, welcher Modus am besten geeignet ist. Wenn Blockly die richtige Wahl trifft, ist es besser, dieses Feld nicht zu definieren, da für verschiedene Sprachübersetzungen automatisch unterschiedliche Modi verwendet werden können. Ein Beispiel für "set %1 to %2" (externe Eingaben) und "put %2 in %1" (Inline-Eingaben) finden Sie unter Reihenfolge der Interpolationstokens.

Verwenden Sie Inline-Eingaben, wenn ein Block wahrscheinlich kleine Eingaben wie Zahlen enthält. Der Nutzer kann diese Option über das Kontextmenü aktivieren oder deaktivieren.