User Tools

Site Tools


k10:k10.2:k10.2.2:start

10.2.2 Two-sided selection IFF

Syntax for 2nd variant of the two-sided, alternative selection:

Value = IIf ( Test AS Boolean , TrueExpression , FalseExpression ) 
Value = If ( Test AS Boolean , TrueExpression , FalseExpression ) 

The test expression is evaluated and returns TrueExpression if the expression is TRUE or FalseExpression if the expression is FALSE.

10.2.2.2.1 Example 1

iNumber = 7 
LabelIIF.Text = IIF((iNumber MOD 2) = 0, "N is an even number", "N is an odd number.") 

The text “N is an odd number” is set as label text for iNumber = 7.

10.2.2.2.2 Example 2

In the second example 2 panels are used alternatively in a project to display the graphs of the program' GnuPlot'. First the current (display) panel is determined and then the labeling of the toggle buttons - depending on the current panel - is set:

Public Sub togWhich_Click() 
  $hCurrentPanel = IIF($hCurrentPanel = panPanel1, panPanel2, panPanel1) 
  togWhich.Text = IIF($hCurrentPanel = panPanel1, ("Use lower Panel"), ("Use upper Panel"))
  Print #$hGnuplot, Subst$("set terminal x11 window \"&1\"", Hex$($hPanel.Handle)) 
End ' togWhich_Click() 

Hints:

  • You can also formulate the alternative control structure IFF(selector, A1, A2) as a control structure with IF..THEN..ELSE..ENDIF at any time.
  • The parentheses around the strings “Use lower panel” and “Use upper panel” can be omitted if you have not planned a translation of the program into another language.

Download

10.2.2 Zweiseitige Auswahl IFF

Syntax für 2. Variante der zweiseitigen, alternativen Auswahl:

Value = IIf ( Test AS Boolean , TrueExpression , FalseExpression ) 
Value = If ( Test AS Boolean , TrueExpression , FalseExpression ) 

Der Test-Ausdruck wird ausgewertet und gibt TrueExpression zurück, wenn der Ausdruck WAHR ist oder FalseExpression, wenn der Ausdruck FALSCH ist.

10.2.2.1 Beispiel 1

iNumber = 7 
LabelIIF.Text = IIF((iNumber MOD 2) = 0, "N ist eine gerade Zahl", "N ist eine ungerade Zahl") 

Als Label-Text wird für iNumber = 7 der Text “N ist eine ungerade Zahl” gesetzt.

10.2.2.2 Beispiel 2

Im zweiten Beispiel werden in einem Projekt zur Anzeige der Graphen des Programms 'GnuPlot' alternativ 2 Panele genutzt. Zuerst wird das aktuelle (Anzeige-)Panel ermittelt und danach die Beschriftung der ToggleButtons – in Abhängigkeit vom aktuellen Panel – gesetzt:

Public Sub togWhich_Click() 
  $hCurrentPanel = IIF($hCurrentPanel = panPanel1, panPanel2, panPanel1) 
  togWhich.Text = IIF($hCurrentPanel = panPanel1, ("Use lower Panel"), ("Use upper Panel"))
  Print #$hGnuplot, Subst$("set terminal x11 window \"&1\"", Hex$($hPanel.Handle)) 
End ' togWhich_Click() 

Hinweise:

  • Die alternative Kontrollstruktur IFF(Selektor, A1,A2) können Sie jederzeit auch als Kontrollstruktur mit IF…THEN..ELSE..ENDIF formulieren.
  • Die Klammern um die beiden Zeichenketten “Use lower Panel” und “Use upper Panel” können entfallen, wenn Sie keine Übersetzung des Programms in eine andere Sprache geplant haben.

Download

The website uses a temporary session cookie. This technically necessary cookie is deleted when the browser is closed. You can find information on cookies in our privacy policy.
k10/k10.2/k10.2.2/start.txt · Last modified: 02.07.2018 (external edit)

Page Tools