Verschieben innerhalb von Zeitraum

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Croasider.

    Verschieben innerhalb von Zeitraum

    Hallo @ all

    Ich möchte eine PictureBox auf der X Achse verschieben. Soweit auch kein Problem. Der User soll angeben können um wie viele Pixel es verschoben werden soll und wie viel Zeit das ganze dauern soll. Es soll wirklich ganz genau die Zeit und die Pixel eingehalten werden. Dafür habe ich folgende Rechnung aufgestellt:

    VB.NET-Quellcode

    1. Dim XPs As Integer = CInt(Pixel / Zeit)
    2. PictureBox.Location.X += XPs


    Nun habe ich das Problem wenn der User Werte eingibt wie:

    20 / 40 = 0.5
    20 / 60 = 0.333

    Ich kann ja leider nur um ganze Pixel verschieben. Wie würdet ihr das Problem lösen?
    Bin für jede Hilfe dankbar. Viele Grüße

    Croasider
    definiere Zeit! ... Tage, Wochen, Monate? oder eher minuten, sekunden? du könntest dann ja zurück rechnen auf millisekunden oder ticks was sicherlich keine große Sache wäre... bei endlos teilern... halt ne rundung dran, und die endposition überwachen....
    XPs als gleitkommatyp behandeln & berechnen und erst bei der Zuweisung nach PictureBox.Location.X runden und auf Integer casten ;) dann gehen auch 0.5er- und 0.3333er-Schritte

    Dann darf allerdings nicht PictureBox.Location.X mit += zugewiesen werden sondern XPs