Tak půlka programu už je hotová. Pro aktuálně vybraný měsíc a rok mi to projde všechny dny a vyhledá všechny dostupné soubory k tomu dnu a vypíše. Problém mi vyvstal v druhé půlce, kdy uživatel bude vybírat ze dvou datumů. Chci omezit vypisování pouze na datumy v jednom roce. Tzn. třeba od 1.1.2010 do 31.7.2010 Zároveň upravuji druhý DatetimePicker tak, aby nikdy konečný datum nebyl menší než počáteční Bohužel se mi program zacyklí jakmile překliknu do následujícího roku.
Private Sub DateTimePicker2_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DateTimePicker2.ValueChanged
If DateTimePicker2.Value < DateTimePicker1.Value Then
DateTimePicker2.Value = DateTimePicker1.Value
End If
If DateTimePicker2.Value.Year <> DateTimePicker1.Value.Year Then
MsgBox("Lze vypočítat pouze mezi dvěmi datumy ve stejném roce", MsgBoxStyle.OkOnly, "Omezení programu")
DateTimePicker2.Value = DateTimePicker1.Value
Exit Sub
End If
End Sub
Private Sub DateTimePicker1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DateTimePicker1.ValueChanged
If DateTimePicker2.Value < DateTimePicker1.Value Then
DateTimePicker2.Value = DateTimePicker1.Value
End If
End Sub
Teď mě sice napadla jedna věc, druhý DateTimePicker vytvářet až za běhu vždy po změně datumu prvního DateTimePickeru druhý vymazat a nahradit novým s novým nastavením hodnot minimální a maximální datum. --- to by asi šlo že? Ale pokud lze udělat nějaký krok v ukázaném kousku kódu, byl bych taky rád. Už jen pro to, že člověk pak vidí různé možnosti. Předem děkuji. PS: jen tak mimochodem jak je zhruba náročný následující dotaz(ta první část) čtení několikabytového souboru je ok - když už existuje
If Not System.IO.File.Exists(CelaCesta3) Then
Else
Dim rr2 As New Cteni(CelaCesta3)
rr2.cist(soubor3.Substring(0, 10))
rr2.zavrit()
End If
Jde o to že tento krok proběhne pro každý den zhruba 1440x Tak zda bych neměl hledat jinou možnost jak najít soubor, který "mohl" být v tom dni vygenerován jiným způsobem, než klasickým a to v přesně danou dobu dvakrát za den = jméno toho souboru je pak známé.
|