2016-10-13 6 views
-1

In Visual Basic brauche ich eine Möglichkeit, eine Zahl zu klemmen, verhindert, dass es zu klein oder groß wird. Es muss zu einer Linie passen, sollte also idealerweise so aussehen wie diese Klammer (x, min, max). Ich habe versucht, einen Weg zu finden, aber konnte nichts finden, irgendwelche Ideen, wie man das macht?Visual Basic eine Nummer klemmen

+0

mein VB wahrscheinlich schrecklich ist, so bin ich nicht einmal versuchen werde und schreiben Sie es in VB, aber in den meisten .NET-Sprachen könnte man so etwas machen: 'double clamp (doppeltes x, doppeltes min, doppeltes max) {return Math.min (Math.max (x, min), max)}' –

Antwort

0

versuchen Sie dies: (true, wenn eine Änderung vorgenommen wurde, und andernfalls false)

Function clamp(ByRef myNum as Integer, min as Integer, max as Integer) as Boolean 
    If myNum < min Then 
     myNum = min 
     Return True 
    End If 
    If myNum > max Then 
     myNum = max 
     Return True 
    End If 
    Return False 
End Function 
+0

Also in meinem Code kann ich Clamp (Variable) setzen, und es wird den obigen Code auf der Variablen ausführen? –

+0

ja. Wie Sie sehen können, ist 'myNum' eine ganze Zahl, aber Sie können sie ändern, wenn Sie möchten. Der Aufruf sieht folgendermaßen aus: 'isChanged = clamp (myNum, 2, 5)' und 'myNum' wird zwischen 2 und 5 aktualisiert. – yd1