Code:
Private Sub PictureBox1_Paint()
Dim rec As Graphics
Dim x, y As Single
rec = PictureBox1.CreateGraphics()
Try
Sql = "SELECT Fahrzeugnummer, Modell, Mietbegin, Mietende FROM tblreservierung"
conn.Open()
With dbcmd
.CommandText = Sql
.Connection = conn
End With
dbda.SelectCommand = dbcmd
dbda.Fill(dbdt)
-------------------------------------------------------------------
'minimum/kleinste Datum über alle Fahrzeuge, wandeln wir in eine Zahl
Dim zeitleisteMin = (((Year(Date.Now()) * 10000) + Month(Date.Now()) * 100) + Day(Date.Now()))
'maximum/höchste Datum über alle Fahrzeuge, wandeln wir in eine Zahl
Dim zeitleisteMax = (((Year(Date.Now()) * 10000 + 10000) + Month(Date.Now())) * 100) + Day(Date.Now())))
'Minum abziehen damit wir unsere 100% zeitleiste haben (Achtung, unten wird auch Minimum immer abgezogen)
Dim zeitleisteMaxBereich = zeitleisteMax - zeitleisteMin + 1
Dim bildBreite = X
Liste FahrzeugeMitZeiten
durchlaufe FahrzeugeMitZeiten(fahrzeug 1 bis N)
{
Dim fahrzeugNr = "Fahrzeugnummer"
Dim fahrzeugBeginn = (((Year("Mietbegin") * 10000) + Month("Mietbegin")) * 100) + Day("Mietbegin")
Dim fahrzeugEnde = (((Year("Mietende") * 10000) + Month("Mietende")) * 100) + Day("Mietende")
Dim prozentualBeginn = ((fahrzeugBeginn - zeitleisteMin) / zeitleisteMaxBereich)
Dim prozentualEnde = ((fahrzeugEnde - zeitleisteMin) / zeitleisteMaxBereich)
Dim rec = neues Rechteck
Dim rec.Left = (prozentualBeginn * bildBreite)
Dim rec.Top = fahrzeugNr * 10
Dim rec.Width = ((prozentualEnde * bildBreite) - (prozentualBeginn * bildBreite))
Dim rec.Height = 10
Dim zeichnen.ZeichneRechteck(rec, Grün)
}
-------------------------------------------------------------------
Catch ex As Exception
MsgBox(ex.Message)
Finally
conn.Close()
End Try
End Sub
bin fleisig am suchen habe aber noch nicht so viel dazu gefunden
dein Code Beispiel lässt sich auch nicht einfach in Vb.net umwandeln daher sind da noch einige Fehler drinn
aber Mühsam ernährt sich halt das Eichhörnchen
der erste Schritt welchen ich nirgends richtig finde ist das übergeben an die PictureBox1 was ich dazu gefunden habe lässt sich im oberen Teil erkennen
im zweiten Teil mein Ansatz die Daten zur Vefügung zu stellen aus der Access Datenbank
Dann zwischen den Linien den grob angepassten Code von Dir
Der Zeitleisten Anfang ist Date.Now*10000 und das Ende Date.Now*10000+10000 was 1 Jahr mehr ergibt
Hast du eine gute Quelle für VB.net zu dem Thema?