ik ben bezig met een programmatje te maken in vb 6.0 en nu moet ik als ik op een knop klik een andere form in het programma laden, hoe doe je dit?
een form laden
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
ik heb er weer een domme, en toch geraak ik er niet.
ik ben bezig met een programmatje te maken in vb 6.0 en nu moet ik als ik op een knop klik een andere form in het programma laden, hoe doe je dit?
ik ben bezig met een programmatje te maken in vb 6.0 en nu moet ik als ik op een knop klik een andere form in het programma laden, hoe doe je dit?
groetjes foxxy

je kan gebruik maken van een MDI-Toepassing
dus bij je MAIN-Form moet je MDI in de property's aanvinken. Dan zal hij alle andere forms dat je opent in het mainform inladen.
Mvg,
Snakehit
dus bij je MAIN-Form moet je MDI in de property's aanvinken. Dan zal hij alle andere forms dat je opent in het mainform inladen.
Mvg,
Snakehit
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
en wat voor code moet ik gebruiken om de form dan te laden? want ik geraak nog steeds niet verder.
groetjes foxxy

-
khsw
- Elite Poster

- Berichten: 1158
- Lid geworden op: 03 maa 2004, 09:04
- Uitgedeelde bedankjes: 18 keer
- Bedankt: 16 keer
En als je een "popup-venster" wil openen dan gebruik je:
Waar Newform de naam van de form is die je wil openen. De hoofdform blijft zichtbaar, maar de nieuwe komt daar modaal boven te staan (de hoofdform is wel zichtbaar, maar niet klikbaar).
Code: Selecteer alles
Private Sub Image1_Click()
Newform.Show 1
End Sub
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
oke, merci allemaal
ik zal het strak wel testen, maar ik ben er vrij hard van overtuigd dat het wel zal werken. en anders horen jullie het wel
ik zal het strak wel testen, maar ik ben er vrij hard van overtuigd dat het wel zal werken. en anders horen jullie het wel
groetjes foxxy

- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
ik heb een probleempje met het werken met tijd,
ik weet niet wat ik verkeerd doe, maar er veranderd niets in de tekstvakken, als ik nu deze code gebruik
dan staan die woordjes in de tekstvakken, dus totdaar is de code al zeker goed, maar ik weet niet hoe ik met die tijd functies moet werken.
Code: Selecteer alles
Private Sub Form_Load()
dag.Text = dag
maand.Text = maand
jaar.Text = jaar
End Sub
Private Sub Timer1_Timer()
Var nieuw = newdate
Var dag = nieuw.getday()
Var maand = nieuw.getmonth()
Var jaar = nieuw.getyear()
End SubCode: Selecteer alles
Private Sub Form_Load()
dag.Text = "dag"
maand.Text = "maand"
jaar.Text = "jaar"
End Sub
Private Sub Timer1_Timer()
Var nieuw = newdate
Var dag = nieuw.getday()
Var maand = nieuw.getmonth()
Var jaar = nieuw.getyear()
End Subgroetjes foxxy

Ik weet niet waar je die code gevonden hebt, maar dat is geen vb code!foxxy girl schreef:Code: Selecteer alles
Private Sub Timer1_Timer() Var nieuw = newdate Var dag = nieuw.getday() Var maand = nieuw.getmonth() Var jaar = nieuw.getyear() End Sub
Probeer hetvolgende eens:
Code: Selecteer alles
Private Sub Timer1_Timer()
dag.Text = Day(now)
maand.Text = Month(now)
jaar.Text = Year(now)
End Sub- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
oepsie, ik zit met javascript te klooien, niet moeilijk dat het niet lukt?

groetjes foxxy

- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
ik denk dat ik nu mijn programma zo heb gemaakt, dat de tekst van een tekstvak wordt opgeslagen als "dd-mm-jjjj nota". de datum die ingevuld word, word gekozen door de gebruiker. dus krijg ik verschillende opgeslagen teksten. bv: 21072004nota (niet gemakkelijk om uit te leggen)
nu wil ik het zo maken dat er in een tekstvak de opgeslagen tekst voor vandaag word geopend, dat moet dus 21072004nota zijn, maar ik weet niet hoe ik zoiets moet maken.
wie kan mij helpen, het is niet gemakkelijk om uit te leggen. dus ik zal er ook even het stuk code bij zetten
in de combo boxen word door de gebruiker de datum gekozen.
nu wil ik het zo maken dat er in een tekstvak de opgeslagen tekst voor vandaag word geopend, dat moet dus 21072004nota zijn, maar ik weet niet hoe ik zoiets moet maken.
wie kan mij helpen, het is niet gemakkelijk om uit te leggen. dus ik zal er ook even het stuk code bij zetten
Code: Selecteer alles
Private Const strFileName = "MyApp2.ini"
Private Const strSection = "Values"
Private Sub opslaan_Click()
WriteIni strSection, Combo1 + Combo2 + Combo3 + "nota", nota.Text, strFileName
End Sub
groetjes foxxy

- trobbelke
- Premium Member

- Berichten: 509
- Lid geworden op: 17 jul 2004, 00:46
- Locatie: Zaventem
- Uitgedeelde bedankjes: 2 keer
- Bedankt: 1 keer
hmmm...
regel inlezen, vergelijken met gewenste waarde, if then else, ...
volgende regel inlezen, ..........
om hoeveel dagen gaat het, 365?
ge kunt ook met een database werken, als ge met een Access database werkt, kunt ge met VB 6.0 gemakkelijk waarden wegschrijven/ophalen enz...
regel inlezen, vergelijken met gewenste waarde, if then else, ...
volgende regel inlezen, ..........
om hoeveel dagen gaat het, 365?
ge kunt ook met een database werken, als ge met een Access database werkt, kunt ge met VB 6.0 gemakkelijk waarden wegschrijven/ophalen enz...
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
tja, ik heb in de combo boxen de keuze gegeven om een datum te selecteren tot 31-12-2025,
ik ga nog eens proberen om het iets duidelijker uit te leggen.
de gebruiker selecteerd in de combo boxen de gewenste datum, typt een tekst in het tekstvak, en klikt op een knop, om de nota op te slaan.
de nota word opgeslagen als de ingevoerde datum, met daarachter de tekst nota. bv: 01012004nota.
als het programma geladen word, moet het kijken welke datum het is.
kijken of er ergens een nota is opgeslagen op deze datum, en die eventueel weergeven.
maar ik kan mss gewoon beter de datum opslagen zonder de tekst nota er achter, dan word het mss iets gemakkelijker.
ik ga nog eens proberen om het iets duidelijker uit te leggen.
de gebruiker selecteerd in de combo boxen de gewenste datum, typt een tekst in het tekstvak, en klikt op een knop, om de nota op te slaan.
de nota word opgeslagen als de ingevoerde datum, met daarachter de tekst nota. bv: 01012004nota.
als het programma geladen word, moet het kijken welke datum het is.
kijken of er ergens een nota is opgeslagen op deze datum, en die eventueel weergeven.
maar ik kan mss gewoon beter de datum opslagen zonder de tekst nota er achter, dan word het mss iets gemakkelijker.
groetjes foxxy

-
ubremoved_539
- Deel van't meubilair

- Berichten: 29849
- Lid geworden op: 28 okt 2003, 09:17
- Uitgedeelde bedankjes: 434 keer
- Bedankt: 1972 keer
Waarom maak je niet gewoon een bestandje aan met als naam de datum, en als inhoud je nota.
Als je dat je programma start moet je gewoon het bestandje inlezen met als naam de huidige datum.
Lijkt mij simpel... of mis ik iets ?
Als je dat je programma start moet je gewoon het bestandje inlezen met als naam de huidige datum.
Lijkt mij simpel... of mis ik iets ?
-
khsw
- Elite Poster

- Berichten: 1158
- Lid geworden op: 03 maa 2004, 09:04
- Uitgedeelde bedankjes: 18 keer
- Bedankt: 16 keer
Of in een databank (Access bijvoorbeeld), lijkt me nog iets galanter dan in een tekstfile.
Is ook eenvoudiger om dan meerdere nota's aan één dag toe te kennen, alle dagen te tonen die nota's hebben, te zoeken, te sorteren, ...
Is ook eenvoudiger om dan meerdere nota's aan één dag toe te kennen, alle dagen te tonen die nota's hebben, te zoeken, te sorteren, ...
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
ja, maar ik heb wel geen idee hoe ik dat moet doen. en ik kan al zeker niet met access werken. een beetje meer uitleg hierover mag wel.khsw schreef:Of in een databank (Access bijvoorbeeld), lijkt me nog iets galanter dan in een tekstfile.
Is ook eenvoudiger om dan meerdere nota's aan één dag toe te kennen, alle dagen te tonen die nota's hebben, te zoeken, te sorteren, ...
merci
groetjes foxxy

-
ubremoved_539
- Deel van't meubilair

- Berichten: 29849
- Lid geworden op: 28 okt 2003, 09:17
- Uitgedeelde bedankjes: 434 keer
- Bedankt: 1972 keer
Begin daarom alvast met mijn tip... eerst stappen, dan pas lopen.foxxy girl schreef:ja, maar ik heb wel geen idee hoe ik dat moet doen. en ik kan al zeker niet met access werken. een beetje meer uitleg hierover mag wel.
merci
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
ik snap niet goed wat je hiermee bedoeld, moet ik voor elke datum een bestandje gaan maken, en het is ook de bedoeling dat je vanuit het programma zelf een nota kan toevoegen.r2504 schreef:Waarom maak je niet gewoon een bestandje aan met als naam de datum, en als inhoud je nota.
Als je dat je programma start moet je gewoon het bestandje inlezen met als naam de huidige datum.
Lijkt mij simpel... of mis ik iets ?
of kan je het zo maken dat het programma een tekstfile kan aanmaken met als naam een gekozen datum?
groetjes foxxy

-
ubremoved_539
- Deel van't meubilair

- Berichten: 29849
- Lid geworden op: 28 okt 2003, 09:17
- Uitgedeelde bedankjes: 434 keer
- Bedankt: 1972 keer
Inderdaadfoxxy girl schreef:of kan je het zo maken dat het programma een tekstfile kan aanmaken met als naam een gekozen datum?
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
en kan je ook effen uitleggen hoe ik dit juist doer2504 schreef:Inderdaadfoxxy girl schreef:of kan je het zo maken dat het programma een tekstfile kan aanmaken met als naam een gekozen datum?
groetjes foxxy

-
khsw
- Elite Poster

- Berichten: 1158
- Lid geworden op: 03 maa 2004, 09:04
- Uitgedeelde bedankjes: 18 keer
- Bedankt: 16 keer
Ik heb even wat voorbeeldcode gemaakt...
Naar een bestand wegschrijven doe je op deze manier:
Het inlezen:
Omdat ik niet wist wat er met bestaande nota's moest gebeuren (bijvoorbeeld een tweede nota op 01012004), wordt deze nota gewoon toegevoegd achteraan de vorige.
Wens je de reeds bestaande te verwijderen, dan roep je het wegschrijven op als volgt:
Op deze manier zal het bestaande bestand worden verwijderd (de vorige nota ben je dan kwijt).
Code: Selecteer alles
Private Sub WriteToFile(strFileName As String, strNote As String, Optional boolKillExistingFile As Boolean = False)
Dim bytFreeFile As Byte
Dim strFile As String
bytFreeFile = FreeFile
strFile = BuildFilePath(strFileName)
If boolKillExistingFile Then
If Dir(strFile) <> "" Then Kill strFile
End If
Open strFile For Append As #bytFreeFile
Print #bytFreeFile, strNote
Close #bytFreeFile
End Sub
Private Function ReadFromFile(strFileName As String) As String
Dim bytFreeFile As Byte
Dim strOutPut As String
Dim strRegel As String
bytFreeFile = FreeFile
Open BuildFilePath(strFileName) For Input As #bytFreeFile
Do While Not EOF(bytFreeFile)
Input #bytFreeFile, strRegel
strOutPut = strOutPut & strRegel & vbCrLf
Loop
ReadFromFile = strOutPut
End Function
Private Function BuildFilePath(strFileName As String) As String
Dim sFolder As String
sFolder = App.Path
If Right(sFolder, 1) <> "\" Then sFolder = sFolder & "\"
BuildFilePath = sFolder & strFileName
End Function
Code: Selecteer alles
WriteToFile "01012004", "nota"Code: Selecteer alles
ReadFromFile("01012004")Wens je de reeds bestaande te verwijderen, dan roep je het wegschrijven op als volgt:
Code: Selecteer alles
WriteToFile "01012004", "nota", True- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
hey, ben terug van egypte, en ik heb nog eens geprobeerd wat jullie me aanraden, maar ik geraak er echt niet uit.
wil iemand mss een voorbeeldje maken en doorsturen?
als iemand dit wil doen plaats er dan aub zoveel mogelijk uitleg bij want, het is echt niet gemakkelijk vind ik.
met die laatst gegeven code weet ik echt geen raad.
wil iemand mss een voorbeeldje maken en doorsturen?
als iemand dit wil doen plaats er dan aub zoveel mogelijk uitleg bij want, het is echt niet gemakkelijk vind ik.
met die laatst gegeven code weet ik echt geen raad.
groetjes foxxy

- trobbelke
- Premium Member

- Berichten: 509
- Lid geworden op: 17 jul 2004, 00:46
- Locatie: Zaventem
- Uitgedeelde bedankjes: 2 keer
- Bedankt: 1 keer
waarom maken ze het altijd zo moeilijk hé?
ge moet beginnen met iets simpel dat werkt, en later gaan uitbreiden.
experimenteer eens met Day(Date), Month(Date) en Year(Date), zet dat in een variabele (aaneenplakken met ampersands) en hopla, ge zijt vertrokken, ge kunt dan die variabele gebruiken als bestandsnaam of mapnaam of formnaam of whatever
en zet gewoon in uw code wat ge moet hebben, de rest moet ge u niet mee bezighouden, en doe het met zo eenvoudig mogelijke code
Hebt ge de MSDN cd's al geïnstalleerd ? zeker doen !
ge moet beginnen met iets simpel dat werkt, en later gaan uitbreiden.
experimenteer eens met Day(Date), Month(Date) en Year(Date), zet dat in een variabele (aaneenplakken met ampersands) en hopla, ge zijt vertrokken, ge kunt dan die variabele gebruiken als bestandsnaam of mapnaam of formnaam of whatever
en zet gewoon in uw code wat ge moet hebben, de rest moet ge u niet mee bezighouden, en doe het met zo eenvoudig mogelijke code
Hebt ge de MSDN cd's al geïnstalleerd ? zeker doen !
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
dat heb ik gedaan, ik heb eerst het programmatje gemaakt, en nu wil ik er eigenlijk een soort van kalender aan toevoegen.
deze probeer ik zoveel mogelijk in de ander form te maken om het voor mezelf overzichtelijk te houden.
maar ik weet echt niet hoe ik met die tijd en datum functies moet werken.
en met het opslaan en openen van een bestand afhankelijk van de datum word het al helemaal een soep.
deze probeer ik zoveel mogelijk in de ander form te maken om het voor mezelf overzichtelijk te houden.
maar ik weet echt niet hoe ik met die tijd en datum functies moet werken.
en met het opslaan en openen van een bestand afhankelijk van de datum word het al helemaal een soep.
groetjes foxxy

- trobbelke
- Premium Member

- Berichten: 509
- Lid geworden op: 17 jul 2004, 00:46
- Locatie: Zaventem
- Uitgedeelde bedankjes: 2 keer
- Bedankt: 1 keer
het opslaan of openen van eeen bestandsnaam met de datum erin hoeft niet moeilijk te zijn, ge moet het in 2 stukken kappen:
er is het gedeelte waarin dat ge de inhoud van uw variabele bepaalt,
en er zijn de bewerkingen op het bestand met als naam wat in de variabele staat.
Probeer dit echt als 2 afzonderlijke dingen te zien, volledig gescheiden van elkaar.
er is het gedeelte waarin dat ge de inhoud van uw variabele bepaalt,
en er zijn de bewerkingen op het bestand met als naam wat in de variabele staat.
Probeer dit echt als 2 afzonderlijke dingen te zien, volledig gescheiden van elkaar.
-
khsw
- Elite Poster

- Berichten: 1158
- Lid geworden op: 03 maa 2004, 09:04
- Uitgedeelde bedankjes: 18 keer
- Bedankt: 16 keer
Hoi Foxxy Girl,
Ik heb een compleet testproject voor jou uitgewerkt en ongeveer alle regels van commentaar voorzien (de code in de form_load heb je niet nodig in jouw project). De methode met de comboboxen heb ik aangehouden omdat ik in een vorige post gezien heb dat je deze blijkbaar reeds op je bestaande form hebt staan.
- Maak een nieuw project aan in Visual Studio 6 (Standard Exe).
- Voeg volgende controls toe aan form1 (de namen laat je maar standaard zoals ze zijn):
-- 3 comboboxen
-- 1 textbox (zet wel de Multiline property op true)
-- 2 commandbuttons
- Verwijder nu alle code uit form1
- Voeg onderstaande code toe aan form1:
Vanaf nu heb je een werkend projectje waar je nota's kunt wegschrijven en ophalen aan de hand van de datum in de drie comboboxen.
Succes!
Ik heb een compleet testproject voor jou uitgewerkt en ongeveer alle regels van commentaar voorzien (de code in de form_load heb je niet nodig in jouw project). De methode met de comboboxen heb ik aangehouden omdat ik in een vorige post gezien heb dat je deze blijkbaar reeds op je bestaande form hebt staan.
- Maak een nieuw project aan in Visual Studio 6 (Standard Exe).
- Voeg volgende controls toe aan form1 (de namen laat je maar standaard zoals ze zijn):
-- 3 comboboxen
-- 1 textbox (zet wel de Multiline property op true)
-- 2 commandbuttons
- Verwijder nu alle code uit form1
- Voeg onderstaande code toe aan form1:
Code: Selecteer alles
Option Explicit
'Functie om een string weg te schrijven naar een bestand
'strFileName : bestandsnaam
'strNote : tekst die naar het bestand moet weggeschreven worden
'boolKillExistingFile : True indien een bestaand bestand met dezelfde naam moet worden overschreven, False indien de tekst moet toegevoegd worden aan een bestaand bestand
Private Sub WriteToFile(strFileName As String, strNote As String, Optional boolKillExistingFile As Boolean = False)
Dim intFreeFile As Integer
Dim strFile As String
intFreeFile = FreeFile 'Ophalen van het volgende vrije bestandsnummer
strFile = BuildFilePath(strFileName) 'Ophalen van de volledige bestandsnaam met folder
If boolKillExistingFile Then 'Indien een bestaand bestand moet overschreven worden
If Dir(strFile) <> "" Then Kill strFile 'Bestaand bestand verwijderen
End If
Open strFile For Append As #intFreeFile 'Bestand openen om toe te voegen, indien onbestaande wordt het aangemaakt
Print #intFreeFile, strNote 'Wegschrijven van de tekst naar het bestand
Close #intFreeFile 'Sluiten van het bestand
End Sub
'Functie om een bestand uit te lezen
'strFileName: bestandsnaam
Private Function ReadFromFile(strFileName As String) As String
Dim intFreeFile As Integer
Dim strOutPut As String
Dim strRegel As String
Dim strFile As String
strFile = BuildFilePath(strFileName)
If Dir(strFile) = "" Then 'Het bestand bestaat niet
ReadFromFile = ""
Else
intFreeFile = FreeFile 'Ophalen van het volgende vrije bestandsnummer
Open strFile For Input As #intFreeFile 'Bestand openen om uit te lezen
Do While Not EOF(intFreeFile) 'Bestand doorlopen zolang we niet aan het einde van de tekst zijn
Input #intFreeFile, strRegel 'Inlezen van een regel uit het bestand
strOutPut = strOutPut & strRegel & vbCrLf 'Ingelezen regel toevoegen aan de outputstring (vbCrLf = Enter)
Loop
Close #intFreeFile 'Sluiten van het bestand
ReadFromFile = Left(strOutPut, Len(strOutPut) - 2) 'Alle ingelezen regels teruggeven zonder de laatste Enter
End If
End Function
'Opbouwen van de locatie van het bestand
'strFileName: Naam van het bestand zonder folders
Private Function BuildFilePath(strFileName As String) As String
Dim sFolder As String
sFolder = App.Path 'De folder waar de applicatie in draait
If Right(sFolder, 1) <> "\" Then sFolder = sFolder & "\" 'Indien de folder niet eindigt op \ voegen we een \ toe
BuildFilePath = sFolder & strFileName 'Teruggeven van de volledige bestandslocatie
End Function
Private Sub Command1_Click()
If IsDate(Combo3 & "/" & Combo2 & "/" & Combo1) Then 'Controleren of er een geldige datum is ingegeven
WriteToFile Combo1 & Combo2 & Combo3 & ".nota", Text1.Text 'Wegschrijven van de nota naar een bestand
Else
MsgBox "Ongeldige datum" 'Waarschuwing geven dat de datum niet geldig is
End If
End Sub
Private Sub Command2_Click()
Dim strInhoud As String
If IsDate(Combo3 & "/" & Combo2 & "/" & Combo1) Then 'Controleren of er een geldige datum is ingegeven
strInhoud = ReadFromFile(Combo1 & Combo2 & Combo3 & ".nota") 'Inhoud van het bestand inlezen in een string
If strInhoud = "" Then 'Het bestand werd niet gevonden
MsgBox "Geen nota voor deze dag!" 'Melding geven dat er geen nota werd gevonden
Else
Text1.Text = strInhoud 'Inhoud van het bestand tonen in de textbox
End If
Else
MsgBox "Ongeldige datum" 'Waarschuwing geven dat de datum niet geldig is
End If
End Sub
Private Sub Form_Load()
Dim i As Integer
'Dynamisch opvullen van de dagen
For i = 1 To 31
Combo1.AddItem Format(i, "00")
Next
Combo1.ListIndex = 0
'Dynamisch opvullen van de maanden
For i = 1 To 31
Combo2.AddItem Format(i, "00")
Next
Combo2.ListIndex = 0
'Dynamisch opvullen van de jaren
For i = 2004 To 2100
Combo3.AddItem i
Next
Combo3.ListIndex = 0
'Zetten van de teksten van de knoppen
Command1.Caption = "Nota wegschrijven"
Command2.Caption = "Nota inlezen"
End Sub
Succes!
- foxxy girl
- Pro Member

- Berichten: 322
- Lid geworden op: 05 jun 2004, 20:59
- Locatie: geel
hey bedankt

ik heb al wel veranderd dat ik de namen van de maanden krijg in plaats van 1.2.3.4.5.6.7.8.9.10.11 of 12 da vind ik iets gemakkelijker.
nu zou ik het wel graag zo maken dat als het progje geladen word, ik de melding krijg of er een nota is voor vandaag of niet, ik heb het zelf al geprobeert, maar het is me niet gelukt.
toch al heeeeeeeeeeel hard bedankt.
ik heb al wel veranderd dat ik de namen van de maanden krijg in plaats van 1.2.3.4.5.6.7.8.9.10.11 of 12 da vind ik iets gemakkelijker.
nu zou ik het wel graag zo maken dat als het progje geladen word, ik de melding krijg of er een nota is voor vandaag of niet, ik heb het zelf al geprobeert, maar het is me niet gelukt.
toch al heeeeeeeeeeel hard bedankt.
groetjes foxxy


