Geschrieben von lordok am 10.07.2006, 16:45

In jeder Applikation, die man schreibt, sind If abfragen unvermeidbar.
Es gibt eine Kleine Hilfe, mit der man sich oft, viel Zeit sparen kann.
Und damit sind wir gleich schon beim Thema. Es Geht um "select case".

Das Grundgerüst besteht aus


Select Case x 'dem Anfang, in dem definiert wird, was abgefragt werden soll,
'zum Beispiel eine Varriable oder der Eigenschaft eines Objektes,
Case 0 'den Möglichkeiten, die abgefragt werden sollen.
'Anweisung
case 1
'Anweisung
End select 'und natürlich dem Ende der Anweisung

Es gibt merere Mögglichkeit, 'case' zu verwenden.

Case a 'Variable
Case 1 'Zahl
Case "hs" 'Zeichenkette
Case Text1.text 'Objekteigenschaft
Case Else 'auch aus dem if-Konstrukt bekannt,
'als "keine der anderen Möglichkeiten ist zutreffend"
Case is < 1 'Mathematische Anwendung
Case is > 1
Case is <> 1

Hier eine Beispielanwendung

'Benötigte Steuerelemente: Text1(Textbox); Label1(Label)

option explicit

sub Form_Load()
text1.text = ""
text1.maxlengh = 1
Caption = "Bitte gib eine Note zwischen 1 und 6 ein"
end sub

sUb text1_change()
select case Val(text1.text)
case 1
label1.caption = "sehr gut"
case 2
label1.caption = "gut"
case 3
label1.caption = "befridigend"
case 4
label1.caption = "ausreichend"
case 5
label1.caption = "mangelhaft"
case 6
label1.caption = "ECHT SCHLECHT =)"
end select
end Sub

Vorsicht!
Grundlegend fällt einem bei dem Verglich zwischen einer 'Select case'-Abfrage und einer 'if'-abfrage nichts auf, jedoch bei Schleifen, die eine 'select case'-Abfrage 50 bis 100 mal ausführen, Braucht dies im Verhältnis zu einer 'If'-abfrage, VIEL länger

Bewertung Anzahl
4
100,0 %
2 Bewertungen