KlassenKlassenKlassenKlassen | | | | Operatoren

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

Wählen Sie oben rechts eine andere Programmiersprache aus.

whilewhileWhilewhileWhileWhile (Operator)

Name

whilewhileWhilewhileWhileWhile — Eröffnet einen Schleifenblock, der solange ausgeführt wird, wie die Bedingung wahr ist.

Signatur

while( : : Condition : )

Herror while(const Hlong Condition)

Herror T_while(const Htuple Condition)

Herror while(const HTuple& Condition)

void While(const HTuple& Condition)

void HOperatorSetX.While([in] VARIANT Condition)

static void HOperatorSet.While(HTuple condition)

Beschreibung

whilewhileWhilewhileWhileWhile führt den Schleifenblock bis zur zugehörigen Anweisung endwhileendwhileEndwhileendwhileEndwhileEndwhile aus, solange der Parameter ConditionConditionConditionConditionConditioncondition 'true'"true""true""true""true""true" (oder eine Zahl ungleich 0) ergibt.

Ergibt die Bedingung 'false'"false""false""false""false""false" (0), wird die Programmausführung nach der zugehörigen endwhileendwhileEndwhileendwhileEndwhileEndwhile-Anweisung fortgesetzt.

Parameter

ConditionConditionConditionConditionConditioncondition (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Bedingung für die Schleife.

Beispiel (HDevelop)

dev_update_window ('off')
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowID)
read_image (Image, 'particle')
dev_display (Image)
stop ()
threshold (Image, Large, 110, 255)
dilation_circle (Large, LargeDilation, 7.5)
dev_display (Image)
dev_set_draw ('margin')
dev_set_line_width (3)
dev_set_color ('green')
dev_display (LargeDilation)
dev_set_draw ('fill')
stop ()
complement (LargeDilation, NotLarge)
reduce_domain (Image, NotLarge, ParticlesRed)
mean_image (ParticlesRed, Mean, 31, 31)
dyn_threshold (ParticlesRed, Mean, SmallRaw, 3, 'light')
opening_circle (SmallRaw, Small, 2.5)
connection (Small, SmallConnection)
dev_display (Image)
dev_set_colored (12)
dev_display (SmallConnection)
stop ()
dev_set_color ('green')
dev_display (Image)
dev_display (SmallConnection)
Button := 1
while (Button == 1)
  dev_set_color ('green')
  get_mbutton (WindowID, Row, Column, Button)
  dev_display (Image)
  dev_display (SmallConnection)
  dev_set_color ('red')
  select_region_point (SmallConnection, SmallSingle, Row, Column)
  dev_display (SmallSingle)
  NumSingle := |SmallSingle|
  if (NumSingle == 1)
    intensity (SmallSingle, Image, MeanGray, DeviationGray)
    area_center (SmallSingle, Area, Row, Column)
    dev_set_color ('yellow')
    set_tposition (WindowID, Row, Column)
    write_string (WindowID, 'Area='+Area+', Int='+MeanGray)
  endif
endwhile
dev_set_line_width (1)
dev_update_window ('on')

Ergebnis

Sind die Parameterwerte korrekt, dann liefert whilewhileWhilewhileWhileWhile (als Operator) den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt und ein Fehlercode zurückgeliefert.

Alternativen

forforForforForFor, untiluntilUntiluntilUntilUntil

Siehe auch

repeatrepeatRepeatrepeatRepeatRepeat, breakbreakBreakbreakBreakBreak, continuecontinueContinuecontinueContinueContinue, ififIfifIfIf, elseifelseifElseifelseifElseifElseif, elseelseElseelseElseElse

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren