abonnement Unibet Coolblue Bitvavo
pi_26250129
Dag mensen,

Ik dacht omdat ik iets niet snap maar weer voor ieder probleem een klein topic te openen lijkt me niet echt heel handig, dus open ik ook voor visualbasic maar een dummies topic. want mijn vraag is nogal dummy

Reeds ben ik bezig met een kleine tool waarmee ik bv _-_ kan omzetten naar [spatie]-[spatie] in bestandsnamen en directories.. nu kan ik dit reeds wel in 1 directory maar het is de bedoeling dat het ook gaat werken in een 'tree'. Oftewel een boomstructuur kan doorzoeken naar dit soort bestanden en deze dan gaat 'renamen'.

Nu was ik vandaag opzoek naar een werkende source die een directorie stuctuur kan doorzoeken maar helaas heb ik geen goede gevonden, tenministe niet een waar vele modules aan vast zitten en ik weet dat er meerdere te vinden zijn maar op een of andere manier kon google en gathering me niets vertellen over het geen dat ik zoek.. Fok wilde mij uiteraard weer niet helpen omdat de search engine uit staat..

Dussuh vraag ik het maar aan de gebruikers.

Hopend op een werkende en goede oplossing.

ik draai VB6 zonder extra's

The people who lost my respect will never get a capital letter for their name again.
Like trump...
  vrijdag 15 april 2005 @ 15:49:19 #2
42782 QuietGuy
opscheppende pats-nerd
pi_26250283
Dus je wilt recursief mappen inlezen eigenlijk? De rest kan je dan waarschijnlijk zelf wel.
pi_26250828
Dat is ontzettend simpel Chandler.
Gebruik het File System Object.
Een uitgewerkt voorbeeldje vind je hier:
http://juicystudio.com/tutorial/vb/files.asp#rec

Wel ff dit doen in je VB projectje. De scripting runtime staat standaard op een systeem:
quote:
Before using the FSO, you have to add the "Microsoft Scripting Runtime Library" to the current project by selecting "Project", "References" from the menu bar.
  vrijdag 15 april 2005 @ 16:20:49 #4
25637 hbruyn
Ben benieuwd
pi_26251033
Gewoon in de for each loop waar je de directories doorloopt de functie opnieuw aanroepen, en de huidige directorie meegeven als (optie).
pi_26254605
Dankjewel mensen (vooral SOP!) ik heb met die site en dergelijke voorbeelden een goed lopend zoek systeem weten te maken maar nu zit ik met iets anders (heb helaas niet continue internet anders zou ik het misschien zelf gevonden hebben). Hoe kan ik een text met enters aan een textbox toevoegen (vbCrLf werkt niet en chr(13) & chr(10) werken helaas niet).

Iemand een idee/
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_26255039
textbox op multiline zetten
pi_26255069
Wederom vriendelijk bedankt, ik ga weer verder spielen!
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_26255270
't is meer Visual Basic voor Chandler door Sop
  vrijdag 15 april 2005 @ 19:38:19 #9
42782 QuietGuy
opscheppende pats-nerd
pi_26255366
quote:
Op vrijdag 15 april 2005 19:34 schreef sop het volgende:
't is meer Visual Basic voor Chandler door Sop
Zal ik het topic veranderen?
pi_26256917
Whahaha, nee doe maar niet, dan kunnen meerdere mensen hier nog gebruik van maken.

* Chandler gaat nu ff opzoek naar een routine voor het 'veranderen' van strings (find and replace)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_26260787
ps weet iemand waar ik documentatie kan downloaden voor vb6 (niet .NET dus).. want kan zelf op msdn.com niets vinden en heb helaas geen cd van de library zelf tot mijn beschikking..
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_26261029
Maak een form genaamd 'form1', voeg vervolgens een listbox genaamd 'list1' toe. Maak daarna een module aan en voeg de volgende code toe:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Public Function ListFilesInDir(ByVal path As String, ByVal filespec As String) As Collection
    Dim spec As Variant
    Dim file As Variant
    Dim subdir As Variant
    Dim subdirs As New Collection
    Dim specs() As String

    Set ListFilesInDir = New Collection

    If Right$(path, 1) <> "\" Then path = path & "\"
    
    specs() = Split(filespec, ";")
   
    On Error Resume Next

    LoadingDirsActive = True

    For Each spec In specs
        file = Dir$(path & spec)
        Do While Len(file)
            FileDetect = StrConv(Right(file, 3), vbLowerCase)
            file = path & file
            
            If IsSupportedFile(FileDetect) Then
                NumAddFils = NumAddFils + 1
                FilesPath = 1
                Form1.List1.AddItem file
            End If

            file = Dir$
        Loop
    Next
    
    file = Dir$(path & "*.*", vbDirectory)
    
    Do While Len(file)
        If file = "." Or file = ".." Then

        ElseIf (GetAttr(path & file) And vbDirectory) = 0 Then

        Else
            file = path & file
            subdirs.Add file, file
        End If

        file = Dir$
    Loop

    For Each subdir In subdirs
        For Each file In ListFilesInDir(subdir, filespec)
            FileDetect = StrConv(Right(file, 3), vbLowerCase)
            
            If IsSupportedFile(FileDetect) Then
                NumAddFils = NumAddFils + 1
                FilesPath = 1
                Form1.List1.AddItem file
            End If
        Next
    Next

    LoadingDirsActive = False
End Function


Voeg nu toe in 'Form_Load':

1Call ListFilesInDir(files, "*.*")


Waar de 'files' parameter het pad is wat je wil doorzoeken.
  zondag 17 april 2005 @ 14:04:53 #13
42782 QuietGuy
opscheppende pats-nerd
pi_26295245
Dan nu even een vraagje van mij

Ik ben bezig met een statistiekenscript voor Windows-webservers. Ik weet dat er al een aantal zijn maar ik wil er zelf ook een maken.

Ik ben al een heel eind, VB genereert een include file welke te gebruiken is in PHP of ASP, wat je maar wilt. Daarop kan je een aardige output baseren, zoals bijvoorbeeld http://quietguy.is-a-geek.org/qgstats/

Nu wil ik ook de temperatuur van de hardware hier bij plaatsen. Eenander statistiekenscript wat ik voorheen gebruikte, gebruikte hiervoor Motherboard Monitor. Ik wil dus niet afhankelijk zijn van steeds losse programmaatjes en wil dit dus ook in mijn Visual Basic-programma krijgen.

Nu zou dit opvraagbaar moeten zijn door middel van de WMI-set Win32_TemperatureProbe maar ik krijg daar geen output van terug. Van andere WMI-sets krijg ik wel mooi alle gegevens die ik wil.

Kan iemand mij een klein voorbeeldje geven van het opvragen van temperaturen, met of zonder WMI?
pi_26295709
quote:
Op zondag 17 april 2005 14:04 schreef QuietGuy het volgende:
Dan nu even een vraagje van mij

Ik ben bezig met een statistiekenscript voor Windows-webservers. Ik weet dat er al een aantal zijn maar ik wil er zelf ook een maken.

Ik ben al een heel eind, VB genereert een include file welke te gebruiken is in PHP of ASP, wat je maar wilt. Daarop kan je een aardige output baseren, zoals bijvoorbeeld http://quietguy.is-a-geek.org/qgstats/

Nu wil ik ook de temperatuur van de hardware hier bij plaatsen. Eenander statistiekenscript wat ik voorheen gebruikte, gebruikte hiervoor Motherboard Monitor. Ik wil dus niet afhankelijk zijn van steeds losse programmaatjes en wil dit dus ook in mijn Visual Basic-programma krijgen.

Nu zou dit opvraagbaar moeten zijn door middel van de WMI-set Win32_TemperatureProbe maar ik krijg daar geen output van terug. Van andere WMI-sets krijg ik wel mooi alle gegevens die ik wil.

Kan iemand mij een klein voorbeeldje geven van het opvragen van temperaturen, met of zonder WMI?
Zoiets als dit:
http://vbnet.mvps.org/index.html?code/wmi/wmitemperatureprobe.htm
  zondag 17 april 2005 @ 15:14:42 #15
42782 QuietGuy
opscheppende pats-nerd
pi_26297190
quote:
Ik krijg er geen output van, maar MotherBoard Monitor geeft wél output
(Src: tempprobe.zip)
pi_26300031
quote:
Op zondag 17 april 2005 15:14 schreef QuietGuy het volgende:

[..]

Ik krijg er geen output van, maar MotherBoard Monitor geeft wél output
(Src: tempprobe.zip)
Ik ook niet, heb een Asus A7N8X moederbord. Heb nog een andere pc met een Abit moederbord, deze geeft de temperaturen wel door. Is dus per systeem anders, denk dat het veroorzaakt wordt doordat de 'Win32_TemperatureProbe' call niet op alle moederborden werkt...
  zondag 17 april 2005 @ 17:33:30 #17
42782 QuietGuy
opscheppende pats-nerd
pi_26300904
quote:
Op zondag 17 april 2005 17:01 schreef The_Terminator het volgende:

[..]

Ik ook niet, heb een Asus A7N8X moederbord. Heb nog een andere pc met een Abit moederbord, deze geeft de temperaturen wel door. Is dus per systeem anders, denk dat het veroorzaakt wordt doordat de 'Win32_TemperatureProbe' call niet op alle moederborden werkt...
Bij mij is het dus ook een asus moederkoekje... balen... Andere oplossing zonder WMI anyone?
  zondag 17 april 2005 @ 17:47:02 #18
42782 QuietGuy
opscheppende pats-nerd
pi_26301319
Hmm. op http://www.ionus.at/content/projects/mbmvb6/ staat een source, maar dan moet je MBM installeren, da's juist wat ik wil overslaan
pi_27671664
Nu weer een leuke vraag(en)

1. hoe kan ik met een vb aplic meerdere trayicons benutten.
2. hoe kan ik bv een procentage aangeven (vb 1t/m 100).. in de icon zonder 100 icons te hoeven maken!

The people who lost my respect will never get a capital letter for their name again.
Like trump...
  maandag 6 juni 2005 @ 12:35:05 #20
42782 QuietGuy
opscheppende pats-nerd
pi_27671707
1. er is een control die je meerdere malen in VB kan plaatsen. Dus kan.
2. Je kan geloof ik pset() gebruiken op de tray. Dan ga je dus plaatjes uittekenen.
pi_27675659
hmm, je maakt het me niet gemakkelijk zie ik al wel weer, mja ik ga er wel even mee spelen!.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  maandag 6 juni 2005 @ 15:02:51 #22
42782 QuietGuy
opscheppende pats-nerd
pi_27676531
quote:
Op maandag 6 juni 2005 14:40 schreef Chandler het volgende:
hmm, je maakt het me niet gemakkelijk zie ik al wel weer, mja ik ga er wel even mee spelen!.
Het hoeft ook niet makkelijk te zijn, zo leer je weer wat
pi_27677429
Chandler: Bedank QG eens voor zijn mooie Network Traffic module!
  maandag 6 juni 2005 @ 15:29:16 #24
42782 QuietGuy
opscheppende pats-nerd
pi_27677495
quote:
Op maandag 6 juni 2005 15:27 schreef sop het volgende:
Chandler: Bedank QG eens voor zijn mooie Network Traffic module!
ah, hij verspreid zich al
pi_27678370
quote:
Op maandag 6 juni 2005 15:29 schreef QuietGuy het volgende:

[..]

ah, hij verspreid zich al
Kenmerk van opensource: andermans code verspreid je makkelijk.
pi_27684335
voor QG!!! en idd sop...

QG BEDANKT!!!
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_27699740
Next questions.

Van Sop heb ik een stukje code, echer zit daar een timer1_timer in (oftewel timer) deze draait niet als ik het programmatje heb geminimaliseerd of naar de tray heb geschopt, hoe krijg ik dat wel voor elkaar?

Tweede is hoe krijg ik een textje op een plaatje? (picturebox?)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_33700623
Een andere vraag!.

Ik heb 2 forms..



en



nu zie je dat op het eerste plaatje 2x brouwse staat... nu wil ik dus het 2e form een directory laten selecteren (dat lukt al) maar deze terug geven aan text 1 of text 2. Echter heb ik geen flauw idee hoe ik kan kijken welke button ik heb aangeklikt om data te plaatsen op de juiste plaats!?

Iemand een idee?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_33700887
Dat browseschermpje kun je beter niet zelf bouwen. Dat is namelijk een standaard component van windows. Je kunt daar beter de CommonDialogs voor gebruiken. VBAccelerator heeft daar wel het een en ander over geschreven en ook Google biedt uitkomst.

Hier een link naar een artikel op vbaccelerator. Een extra DLL is overigens niet nodig om van commondialogs gebruik te maken (o.a. een folderbrowser).
pi_33701070
maar ok, als ik dat gebruik moet ik ook nog de data op de juiste plaats zien te krijgen, en dat lukt nu helaas nog niet

Wat ik al heb (http://upload.bruggema.nl/index.php?i=v&ip=1372487152&name=backup directories.zip)

[ Bericht 19% gewijzigd door Chandler op 04-01-2006 17:57:27 ]
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_33701427
quote:
Op woensdag 4 januari 2006 17:51 schreef Chandler het volgende:
maar ok, als ik dat gebruik moet ik ook nog de data op de juiste plaats zien te krijgen, en dat lukt nu helaas nog niet

Wat ik al heb (http://upload.bruggema.nl/index.php?i=v&ip=1372487152&name=backup directories.zip)
Is niet zo moeilijk. Ik pas je source even aan en plaats de link hier zometeen wel.
pi_33701465
als je wil, zet er dan ff comments bij... dan kan ik er van leren
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_33701657
quote:
Op woensdag 4 januari 2006 18:05 schreef Chandler het volgende:
als je wil, zet er dan ff comments bij... dan kan ik er van leren
Ik heb alleen het volgende aangepast:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Command1_Click()
    If lister.view = "from" Then
        If Right$(Dir.Path, 1) = "\" Then
            lister.fromDir.Text = Dir.Path
        Else
            lister.fromDir.Text = Dir.Path & "\"
        End If
    ElseIf lister.view = "to" Then
        If Right$(Dir.Path, 1) = "\" Then
            lister.toDir.Text = Dir.Path
        Else
            lister.toDir.Text = Dir.Path & "\"
        End If
    End If
    
    Unload Me
    
    'MsgBox (Dir.Path & " enzo " & view)
End Sub


Dus gewoon kijken wat voor waarde de variable 'view' heeft en dan de juiste textbox op de form 'lister' aanpassen. Ik heb ook een functie ingebouwd die checkt of er een '\' achter het pad staat.
pi_33701793
omg natuurlijk, ik ben helemaal vergeten om ook de form aan te geven... dat is natuurlijk erg belangrijk!!! tnx man!... dit helpt me al weer een heel stuk verder!!! tnx!.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_35204847
Vraagje over VB-tags bij tekstopmaak:

Achter een gewoon tekstblok is het mogelijke een extra tekstblok toe te voegen; dit extra tekstblok wordt pas zichtbaar als de muiscursor op de gewone tekstblok geplaatst wordt.

De syntax lijkt op [spoiler=GewoneTekst]ExtraTekst[/spoiler] ... maar is niet correct. Wat is dan wel de goede syntax?
pi_35207010
intresting..
pi_35215016
quote:
Op vrijdag 17 februari 2006 22:15 schreef Gajus het volgende:
Vraagje over VB-tags bij tekstopmaak:

Achter een gewoon tekstblok is het mogelijke een extra tekstblok toe te voegen; dit extra tekstblok wordt pas zichtbaar als de muiscursor op de gewone tekstblok geplaatst wordt.

De syntax lijkt op [spoiler=GewoneTekst]ExtraTekst[/spoiler] ... maar is niet correct. Wat is dan wel de goede syntax?
Waar heb je het over?
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_35215044
Misschien is een wat duidelijker uitleg handig in deze zaak? weet je wel zekers dat je het over VisualBASIC hebt?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_35223825
quote:
Op zaterdag 18 februari 2006 10:40 schreef Chandler het volgende:
Misschien is een wat duidelijker uitleg handig in deze zaak? weet je wel zekers dat je het over VisualBASIC hebt?
Binnen een tekst kun jij tags plaatsen zoals (b) en (/b), maar dan met hoekige haken. Zo bestaan er ook tags om extra tekst toe te voegen aan een normale tekst. Ik weet dat die tags bestaan en toepasbaar zijn binnen het Forum aangezien ik zij ooit heb gebruikt (maar dat was in de Preview-mode, dus kan ik het niet terugvinden).

Voordat ik mijn vraag hier stelde, heb ik uitgebreid gegoogled. Daarbij ben ik de termen tegengekomen zoals SML-code (SML= Simple Markup Language), BB-code (BB=?) en ook VB-code (VB= VisualBasic).

Ik ben van de ArpaNet-generatie en recentere ontwikkelingen zoals VisualBasic zijn aan mij voorbij gegaan. Jouw vraag of dit een VisualBasic aangelegenheid betreft, kan ik dan ook niet bevestigen of ontkennen.
  zaterdag 18 februari 2006 @ 16:48:05 #40
2671 Aaargh!
Gebruik op eigen risico.
pi_35224857
quote:
Op zaterdag 18 februari 2006 16:13 schreef Gajus het volgende:
(...) en ook VB-code (VB= VisualBasic).
Jij doelt op vB-code (vBulletin, een webforum pakket)
quote:
Ik ben van de ArpaNet-generatie en recentere ontwikkelingen zoals VisualBasic zijn aan mij voorbij gegaan. Jouw vraag of dit een VisualBasic aangelegenheid betreft, kan ik dan ook niet bevestigen of ontkennen.
VisualBasic is een soort van RAD tool met een BASIC achtige syntax, voornamelijk gebruikt door (zoals het topic al aangeeft) dummies.
It is impossible to live a pleasant life without living wisely and well and justly.
And it is impossible to live wisely and well and justly without living a pleasant life.
pi_35275554
quote:
Op zaterdag 18 februari 2006 16:48 schreef Aaargh! het volgende:
Jij doelt op vB-code (vBulletin, een webforum pakket)

VisualBasic is een soort van RAD tool met een BASIC achtige syntax, voornamelijk gebruikt door (zoals het topic al aangeeft) dummies.
Mijn dank voor het oplossen van dit misverstand.
Ik zal mijn vraag in een ander subforum stellen.

Off topic:
Ca. 25 jaar geleden heb ik noodgedwongen BASIC gebruikt. Ik heb het altijd als een (inmiddels gepasseerde) kinderziekte van de PC beschouwd. Hilarisch te vernemen dat Visual Basic een doorontwikkeling van BASIC is.
  maandag 20 februari 2006 @ 11:50:00 #42
15929 DiRadical
Everything's ruined
pi_35282793
quote:
Op woensdag 4 januari 2006 18:11 schreef The_Terminator het volgende:

[..]

Ik heb alleen het volgende aangepast:
[ code verwijderd ]

Dus gewoon kijken wat voor waarde de variable 'view' heeft en dan de juiste textbox op de form 'lister' aanpassen. Ik heb ook een functie ingebouwd die checkt of er een '\' achter het pad staat.
Ai, dit maakt het wel heel erg complex, zelfs voor zo'n simpel toolje.
Het is niet verstandig om het aangeroepen scherm zo afhankelijk te maken van het aanroepende scherm.
(Wat ga je doen als je een derde knop met dezelfde functionaliteit wil, op hetzelfde of een ander scherm)

Ik zou een public property toevoegen aan het brouwser scherm. Deze kan dan vanaf het aanroepende scherm worden uitgelezen.
Dat maakt het onafhankelijk van het aantal knoppen op het scherm en zelfs van deze applicatie
Je kunt het dan ook gebruiken in een ander project of op andere scherm binnen je huidige project
Het brouwser scherm ziet er dan zo uit.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Private mvarDirSelected As String
Private Sub Command1_Click()
    Me.SelectedDir = Dir.Path
    Me.Hide
    'MsgBox (Dir.Path & " enzo " & view)    
End Sub

Private Sub Drive_Change()
    Dir.Path = Drive.Drive
End Sub

Public Static Property Get SelectedDir() As String
    SelectedDir = mvarDirSelected    
End Property

Public Static Property Let SelectedDir(ByVal sNewValue As String)
    Dim tmpdir As String
' Dit voor een beetje controle op het formaat van de binnenkomende string als het property van buiten wordt gezet. Waterdicht is deze niet

    If InStr(1, sNewValue, ":\", vbTextCompare) > 0 Then
        Drive.Drive = sNewValue
        Dir.Path = sNewValue
    End If
' Einde controle
'Code uit Command1_click, maar een beetje aangepast

    If Right(sNewValue, 1) = "\" Then
       tmpdir = sNewValue
    Else
       tmpdir = sNewValue + "\"
    End If
    mvarDirSelected = tmpdir
End Property

Voor het scherm Lister

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Sub FromBrouwse_Click()
    'Ik heb een hekel aan het standaard scherm dat VB in het geheugen kwakt.
    'Je hebt veel minder controle op die manier.
    'Daarom definieer ik altijd nieuwe scherm objecten die na gebruik weg gooi.
    '
    Dim frmFrom As Brouwser
    Set frmFrom = New Brouwser
    '
    'optioneel kun je ook de geselecteerde directory in het brouwser scherm zetten
    ' De huidige directory wordt dan voor geselecteerd
    '
    If Trim(fromDir.Text) <> "" Then
        frmTo.SelectedDir = fromDir.Text
    End If
    'Laat het scherm zien
    frmFrom.Show vbModal
   
    'Haal de waarde op. het scherm zit nog in het geheugen en is "aanspreekbaar"
    'Zolang je GEEN grafische objecten aanspreekt zal het niet opnieuw geladen worden !
    '!Dit is laatste is erg belangrijk!
    fromDir.Text = frmFrom.SelectedDir

    'Gooi het scherm weg
    Unload frmFrom
    Set frmFrom = Nothing
End Sub

Private Sub ToBrouwse_Click()
    Dim frmTo As Brouwser
    Set frmTo = New Brouwser
    If Trim(toDir.Text) <> "" Then
        frmTo.SelectedDir = toDir.Text
    End If
    frmTo.Show vbModal
    toDir.Text = frmTo.SelectedDir
    Unload frmTo
    Set frmTo = Nothing
End Sub

Zoals je ziet heb je de variabele view niet nodig.
Je weet namelijk op welke knop je drukt (de knop waarvan het event afgaat)
Wellicht kost het iets meer tijd om dit initieel te maken, maar een nieuwe knop toevoegen kost dan weer veeeel minder tijd.
Happyness is nature's way of informing human resources that you're overpaid
-Catbert: Evil director of HR
pi_35283969
Ik ook een VB vraag! Het gaat over de Timer, ik wil m meerdere malen naast elkaar laten lopen (4x) om iets af te tellen op een knop tot het moment dat die knop weer vrijgegeven wordt.

ik gebruik nu de volgende Do While Loop:
1
2
3
4
5
6
7
8
Do While (Timer <= StartCrime + PauseCrime)
       DoEvents
       btnCrime.Enabled = False
       btnCrime.Caption = "Waiting " & Round(StartCrime - Timer + PauseCrime) & " secs"
       PauseCrime = PauseCrime - 0.000001
       blnCrime = False
      Call checkCar
Loop


De button wordt disabled, de titel telt af in secondes. De pausetijd (PauseCrime) wordt minimaal veranderd vanwege andere stukjes code in de Form maar das hier niet van toepassing. De boolean wordt weer False om andere dingen te kunnen checken en er wordt een checkCode opgeroepen om te kijken of de andere timer loopt.

Maar omdat ik een vrij snelle computer heb gaat ie echt 100 loops per seconde doen ongeveer waardoor je dus de knop ziet flitsen en gaan als een idioot, wat erg irritant is.

Wat wil ik
Ik wil dus eigenlijk een Do While Loop die echt maar 1x per seconde loopt...enig idee? (En ondertussen ook nog in andere Do While Loops kan hangen omdat er dus nog 3 soortgelijke knoppen zijn).
  maandag 20 februari 2006 @ 12:41:04 #44
2671 Aaargh!
Gebruik op eigen risico.
pi_35284368
quote:
Op maandag 20 februari 2006 12:29 schreef DaFan het volgende:
Ik ook een VB vraag! Het gaat over de Timer, ik wil m meerdere malen naast elkaar laten lopen (4x) om iets af te tellen op een knop tot het moment dat die knop weer vrijgegeven wordt.

ik gebruik nu de volgende Do While Loop:
[ code verwijderd ]
Wat jij doet heet een busy-wait, en dat mag je NOOIT doen op een multitasking OS.

Je programma gaat dan CPU tijd gebruiken terwijl ie het niet nodig heeft, normaliter doe je dit door een thread te starten voor de teller en steeds je thread een seconde stil te zetten (je vraagt dan feitelijk aan de scheduler om je thread een seconde lang niet te laten runnen). Maar volgens mij heeft VB geen support voor multithreading

Wat je in VB waarschijnlijk kan doen is een timer maken die na 1 seconde een event genereerd (dat kan neem ik aan?) .
It is impossible to live a pleasant life without living wisely and well and justly.
And it is impossible to live wisely and well and justly without living a pleasant life.
pi_35285174
quote:
Op maandag 20 februari 2006 12:41 schreef Aaargh! het volgende:

[..]
Wat je in VB waarschijnlijk kan doen is een timer maken die na 1 seconde een event genereerd (dat kan neem ik aan?) .
Het probleem van de Timer() is dat ie telt in seconden vanaf middernacht Daarom moet je ook die <= gebruiken. Je kan m niet laten starten vanaf het moment dat je de Sub oproept.

Maar een aparte event oproepen na een seconde is ook wel een manier die eventueel te coden is...ik ga wat proberen vandeweek. (Ben ziek dus beetje concentreren op een lap code lukt me niet)
  maandag 20 februari 2006 @ 13:43:54 #46
2671 Aaargh!
Gebruik op eigen risico.
pi_35286438
quote:
Op maandag 20 februari 2006 13:05 schreef DaFan het volgende:

[..]

Het probleem van de Timer() is dat ie telt in seconden vanaf middernacht Daarom moet je ook die <= gebruiken. Je kan m niet laten starten vanaf het moment dat je de Sub oproept.
Ik heb in een grijs verleden nog wel eens met VB geprutst (nog steeds nachtmerries van). Maar volgens mij had je toen gewoon een Timer dingetje wat je b.v. op 1 seconde kon zetten en dan ging er gewoon elke seconde een event af.
It is impossible to live a pleasant life without living wisely and well and justly.
And it is impossible to live wisely and well and justly without living a pleasant life.
pi_35288095
quote:
Op maandag 20 februari 2006 13:43 schreef Aaargh! het volgende:

[..]

Ik heb in een grijs verleden nog wel eens met VB geprutst (nog steeds nachtmerries van). Maar volgens mij had je toen gewoon een Timer dingetje wat je b.v. op 1 seconde kon zetten en dan ging er gewoon elke seconde een event af.
Ik ben het nog niet tegen gekomen. Als er anderen zijn die dit topic lezen en het wel weten...graag

Alvast bedankt iig voor je hulp
  maandag 20 februari 2006 @ 15:21:25 #48
15929 DiRadical
Everything's ruined
pi_35289611
quote:
Op maandag 20 februari 2006 13:43 schreef Aaargh! het volgende:

[..]

Ik heb in een grijs verleden nog wel eens met VB geprutst (nog steeds nachtmerries van). Maar volgens mij had je toen gewoon een Timer dingetje wat je b.v. op 1 seconde kon zetten en dan ging er gewoon elke seconde een event af.
Dat klopt.
Je kunt de timer.inteval op 1000 zetten (tijd in milli seconden) en dan gaat het event elke seconde af totdat de timer disabled wordt
In het timer event kun je de timer disabelen.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Dim stDate As Date

Private Sub Form_Load()
stDate = Now()
Label1.Caption = ""
Timer1.Enabled = True

End Sub

Private Sub Timer1_Timer()
If DateDiff("s", stDate, Now()) <= 5 Then
    Label1.Caption = Label1.Caption + Format(Now(), "dd-mm-yy hh:nn:ss") + vbNewLine
Else
    Label1.Caption = Label1.Caption + "einde"
    Timer1.Enabled = False
End If
End Sub
Happyness is nature's way of informing human resources that you're overpaid
-Catbert: Evil director of HR
pi_35291436
DiRadical:
Die code van jou gaat om de 1 sec in de If functie? En dat 5x?
pi_35292147
quote:
Op maandag 20 februari 2006 15:21 schreef DiRadical het volgende:

[..]

Dat klopt.
Je kunt de timer.inteval op 1000 zetten (tijd in milli seconden) en dan gaat het event elke seconde af totdat de timer disabled wordt
In het timer event kun je de timer disabelen.
[ code verwijderd ]
Is het niet beter om een API timer te gebruiken?

Deze code moet dan in een module:

1
2
3
4
5
6
7
8
9
10
11
12
13
Declare Function SetTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Declare Function KillTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long

Dim Timer1 As Long

Function StartTimer1()
   Timer1 = KillTimer(0, Timer1)
   Timer1 = SetTimer(0, 0, 1000, AddressOf TimerSub1) 
End Function 

Function StopTimer1()
   Timer1 = KillTimer(0, Timer1)
End Function


Dit mag in een module staan, maar ook in een form:

1
2
3
Public Function TimedSub1() 
   'code in deze functie wordt om de 1000 ms getriggerd door de timer
End Function


Deze code moet in de form staan:

1
2
3
Private Sub Form_Unload(Cancel As Integer)
   StopTimer1
End Sub


Om de timer te starten gebruik je: StartTimer1
Om de timer te stoppen gebruik je: StopTimer1

Owja, niet op de stop knop van VB drukken voordat je een API timer gestopt hebt, anders crasht VB
  maandag 20 februari 2006 @ 16:59:57 #51
15929 DiRadical
Everything's ruined
pi_35293262
quote:
Op maandag 20 februari 2006 16:10 schreef DaFan het volgende:
DiRadical:
Die code van jou gaat om de 1 sec in de If functie? En dat 5x?
Ja,
Iedere seconde wordt het timer1_timer event afgevuurd.
Dat komt omdat de interval op 1000 staat in het control.
Na 5 seconden wordt de timer disabled
Dit kun je natuurlijk ook doen als je het form afsluit (het form_unload of Form_QueryUnload event)
Dan worden de functies die je in het timer event aanroept iedere seconde uitgevoerd, totdat je het scherm afsluit.
Happyness is nature's way of informing human resources that you're overpaid
-Catbert: Evil director of HR
  maandag 20 februari 2006 @ 17:06:27 #52
15929 DiRadical
Everything's ruined
pi_35293500
quote:
Op maandag 20 februari 2006 16:30 schreef The_Terminator het volgende:

[..]

Is het niet beter om een API timer te gebruiken?

Deze code moet dan in een module:
[ code verwijderd ]

Dit mag in een module staan, maar ook in een form:
[ code verwijderd ]

Deze code moet in de form staan:
[ code verwijderd ]

Om de timer te starten gebruik je: StartTimer1
Om de timer te stoppen gebruik je: StopTimer1

Owja, niet op de stop knop van VB drukken voordat je een API timer gestopt hebt, anders crasht VB
Het kan.
Maar ik vraag me altijd af of API "beter" is als het niet nodig is
Ik gebruik het liefst geen API in VB6, tenzij het niet anders kan.
Happyness is nature's way of informing human resources that you're overpaid
-Catbert: Evil director of HR
pi_35295605
Heel erg bedankt DiRadical
Ik heb nu 2 knoppen die prima werken, straks een derde eraan toevoegen

Code van de timer is nu zo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
If DateDiff("s", stDate, Now()) Then
    If blnCrime = True Then
        StartCrime = StartCrime - 1
            If StartCrime = 0 Then
                btnCrime.Caption = "Crime"
                blnCrime = False
                btnCrime.Enabled = True
                Exit Sub
            End If
        btnCrime.Caption = StartCrime
    Else: btnCrime.Caption = "Crime"
    End If
    If blnCar = True Then
        StartCar = StartCar - 1
            If StartCar = 0 Then
                btnCar.Caption = "Car"
                blnCar = False
                btnCar.Enabled = True
                Exit Sub
            End If
        btnCar.Caption = StartCar
    Else: btnCar.Caption = "Car"
    End If
End If


In de clickevents wordt de boolean True en worden ze disabled en de tijd wordt vastgesteld.
Bedankt
pi_35342883
Ik weet vanaf het begin al dat ik meerdere forms in één project kan stoppen. Dan moet het dus ook mogelijk zijn om tussen die twee te switchen.

Hoe doe ik dat? Ik draai hier VB.net 2003
pi_35343126
quote:
Op dinsdag 21 februari 2006 20:52 schreef woutabest het volgende:
Ik weet vanaf het begin al dat ik meerdere forms in één project kan stoppen. Dan moet het dus ook mogelijk zijn om tussen die twee te switchen.

Hoe doe ik dat? Ik draai hier VB.net 2003
Met een knop ofzo?

1
2
3
4
5
6
Private Sub btnSwitch_Click()

    Form1.Hide
    Form2.Show

End Sub

Eventueel kan je nog kiezen om:

1   Unload Form1


erbij te doen, maar op deze manier zou het moeten lukken.
pi_35343556
Helaas, niets pakt hij. Wel deed hij me.Hide maar die staat voor de form zelf...
Geeft overal blauwe kringeltjes en ook bij debuggen loopt hij vast...
pi_35344424
Je moet natuurlijk wel een referentie naar het form hebben dat je wil tonen of verbergen.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_35344517
ja, zover ben ik nog niet
pi_35345433
quote:
Op dinsdag 21 februari 2006 21:34 schreef woutabest het volgende:
ja, zover ben ik nog niet
<formnaam>.Show zou gewoon moeten werken
pi_35345532
quote:
Op dinsdag 21 februari 2006 21:55 schreef DaFan het volgende:

[..]

<formnaam>.Show zou gewoon moeten werken
Dan krijg ik de volgende melding:

1reference to a non-shared member requires an object reference
pi_35345832
quote:
Op dinsdag 21 februari 2006 21:58 schreef woutabest het volgende:

[..]

Dan krijg ik de volgende melding:
[ code verwijderd ]
Staan ze wel in dezelfde application? Want hij vraagt nu om een Object terwijl bij 2 Forms in dezelfde Application dat niet nodig is (omdat het object hetzelfde is).

Anders zou je dus
<objectnaam> . <formnaam> . Show
kunnen gebruiken.

Anders weet ik het ook niet, al denk ik wel dat de help er iets over te zeggen heeft.
pi_35347023
Misschien kan ik beter mezelf even de help in gaan duiken, als ik die meegeïnstalleerd heb
  woensdag 22 februari 2006 @ 12:02:47 #63
15929 DiRadical
Everything's ruined
pi_35360411
quote:
Op dinsdag 21 februari 2006 21:55 schreef DaFan het volgende:

[..]

<formnaam>.Show zou gewoon moeten werken
Niet in .NET
Er is, gelukkig, geen default instantie van het object (form) meer aanwezig in .NET
Je moet eerst het scherm definiëren en instantieren.
Dus:
1
2
dim frm as new form2
frm.show


Dim as new is niet handig in VB6, omdat je het dan niet meer naar nothing kunt zetten.
Er wordt een nieuwe instantie aangemakt als je er naar refereert, dus ook als je het naar nothing zet.
In .Net maakt dat niet meer uit.
Happyness is nature's way of informing human resources that you're overpaid
-Catbert: Evil director of HR
pi_35360436
Oh is .Net zo anders dan....sorry dan
pi_35360550
het werkt!

dankje!

Ook DeFan natuurlijk bedankt, je deed je best

[ Bericht 30% gewijzigd door woutabest op 22-02-2006 12:13:04 ]
  woensdag 22 februari 2006 @ 13:01:25 #66
15929 DiRadical
Everything's ruined
pi_35362209
quote:
Op woensdag 22 februari 2006 12:07 schreef woutabest het volgende:
het werkt!

dankje!

Ook DeFan natuurlijk bedankt, je deed je best
Als je meerdere schermen wilt, kun je natuurlijk ook een MDI applicatie maken.
Met een menu e.d.
Maar dat is afhankelijk van het type applicatie dat je wilt maken.
Happyness is nature's way of informing human resources that you're overpaid
-Catbert: Evil director of HR
pi_35363190
Toch leuk, al die termen die ik niet snap.

Ik probeer een klokje te maken. Als ik op een knop in MainMenu1 druk, komt form2 tevoorschijn waarin ik alles kan invoeren.

Nu moet ik nog even iets vinden waarbij ik de data over kan brengen. Zelf zit ik te denken aan om het op te slaan in een .txt bestand, en dat ik mijn programma dan 'refresh'.

Opslaan wil ik toch wel, dus dat wordt niet veel meer werk.
  woensdag 22 februari 2006 @ 14:31:19 #68
15929 DiRadical
Everything's ruined
pi_35365338
quote:
Op woensdag 22 februari 2006 13:30 schreef woutabest het volgende:
Toch leuk, al die termen die ik niet snap.

Ik probeer een klokje te maken. Als ik op een knop in MainMenu1 druk, komt form2 tevoorschijn waarin ik alles kan invoeren.

Nu moet ik nog even iets vinden waarbij ik de data over kan brengen. Zelf zit ik te denken aan om het op te slaan in een .txt bestand, en dat ik mijn programma dan 'refresh'.

Opslaan wil ik toch wel, dus dat wordt niet veel meer werk.
MDI is Multiple Document Interface waarbij je een scherm hebt waarin de andere scherm geopend worden
Een duidelijk, maar lelijk voorbeeld

Er zijn 1000 en 1 manieren op gegevens van het ene in het andere scherm te krijgen en opslaan in een text bestand is er 1 van. Waarschijnlijk wel 1 van de traagste.

Wat bedoel je met 'een klokje' ?
Er wat vult je in op scherm 2

Een quick en dirty methode is om de textboxen op scherm 2 "public" te maken.
Start het scherm op via
frm.showdialog
In scherm 2 Hide je het scherm als je daar op de knop drukt.
In scherm 1 kun je dan de ingevoerde waarden uitlezen en verwerken.

[ Bericht 13% gewijzigd door DiRadical op 22-02-2006 14:49:42 ]
Happyness is nature's way of informing human resources that you're overpaid
-Catbert: Evil director of HR
pi_35366714
Een simpel progje dat aftelt naar een bepaalde datum en tijd en als het zover is een melding geeft. Zegmaar een 'kom van de computer af' of een 'je hebt een afspraak'.

Zal wel niet erg moeilijk zijn
  donderdag 23 februari 2006 @ 14:39:24 #70
15929 DiRadical
Everything's ruined
pi_35406587
quote:
Op woensdag 22 februari 2006 15:11 schreef woutabest het volgende:
Een simpel progje dat aftelt naar een bepaalde datum en tijd en als het zover is een melding geeft. Zegmaar een 'kom van de computer af' of een 'je hebt een afspraak'.

Zal wel niet erg moeilijk zijn
Dit zit toch al in MS Outlook ?
KISS (Keep it simple stupid), dus blijf van de Windows Services en de tray icons af

Je kunt daar heel lang mee bezig zijn:

  • services en een mooi tray icon
  • Meerdere berichten van te voeren aan maken (soort message que)
  • bericht naar een andere computer sturen
  • enz.

    Success ermee.

    Ik moet zelf weer eens aan de slag gaan met mijn Bieb programmaatje voor al mijn boeken, CDs (muziek tot op track niveau of losse MP3), DVDs (avi en film) en video banden.
    Referenties naar de artiesten (schrijver, muzikant, acteur, regisseur) en hun rol.
    IMDB en FreeDB integratie.
    Meerdere soorten GUI's op dezelfde business logic
    enz., enz.

    Veel te groot dus en ik ben al een paar keer begonnen en gestopt met een soort datamodel.
    Maar nog steeds niet tevreden en niet echt begonnen.
  • Happyness is nature's way of informing human resources that you're overpaid
    -Catbert: Evil director of HR
    pi_35406770
    Als je vragen hebt horen we het wel
    pi_36735454
    Ik zit met een klein probleem:

    1
    2
    3
    4
    5
    6
    7
        If QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir") > "" Then
        On Error GoTo topathErr
            toDir.path = QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir")
            GoTo topathklaar
    topathErr:
            toDir.path = "c:"
    topathklaar:


    het probleem zit in todrive.path maar kan niet zorgen dat wanneer het path fout is het script naar de volgende goto gaat? wat doe ik fout?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 7 april 2006 @ 13:36:00 #73
    15929 DiRadical
    Everything's ruined
    pi_36736789
    quote:
    Op vrijdag 7 april 2006 12:56 schreef Chandler het volgende:
    Ik zit met een klein probleem:
    [ code verwijderd ]

    het probleem zit in todrive.path maar kan niet zorgen dat wanneer het path fout is het script naar de volgende goto gaat? wat doe ik fout?
    Als je todrive.path fout gaat, moet je IF toch ook fout.
    Ik lees tenminste dezelfde argumenten in de functie.

    Waneer je je on error goto voor de IF zet, zou het goed moeten gaan
    Happyness is nature's way of informing human resources that you're overpaid
    -Catbert: Evil director of HR
    pi_36737562
    ah juist, je hebt gelijk~!

    maar ook na de aanpassing blijft de error hetzelfde.

    1
    2
    3
    4
    5
    6
    7
    8
        On Error GoTo topathErr
        If QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir") > "" Then
            toDir.path = QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir")
            GoTo topathklaar
        End If
    topathErr:
            toDir.path = "c:"
    topathklaar:


    error bij toDir.path = QueryValue dat het path niet bestaat maar k... nu moet ik dus nog weer een andere oplossing hebben.
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_36737715
    Kan je niet beter eerst QueryValue toewijzen en dan met een IF kijken of toDir.path leeg is?
      vrijdag 7 april 2006 @ 14:31:51 #76
    15929 DiRadical
    Everything's ruined
    pi_36738544
    Wat is toDir.
    Een drivelistbox of een filelistbox
    Het kan zijn dat de directory moet bestaan voordat je 'm mag toewijzen aan 1 van deze controls
    Je zou kunnen controleren of de directory bestaat via het FileSystemObject.
    Maar dan moet je in je project wel eerst een referentie zetten naar Microsft Scripting Runtime.
    Dat kan in Project-> references

    Deze staat in <je windows dir>\system32\scrrun.dll


    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim fso As FileSystemObject
    dim sFolder as string
    set fso = new FileSystemObject
    sFolder  = QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir") 
    if fso.FolderExists(sFolder) = true then
        toDir.path = sFolder
    else
        toDir.path = "c:"
    end if


    [ Bericht 4% gewijzigd door DiRadical op 07-04-2006 14:35:16 (code beter gemaakt) ]
    Happyness is nature's way of informing human resources that you're overpaid
    -Catbert: Evil director of HR
    pi_36739001
    Maar het zou toch moeten werken met een onerror??? tenminste dat leek mij zo logisch...
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 7 april 2006 @ 15:34:49 #78
    15929 DiRadical
    Everything's ruined
    pi_36740578
    Oeps,
    Ik had het zelf even moeten controleren in VB6 zelf
    Deze moet anders
    1toDir.path = "c:\"


    Hij crashed 2 keer.
    1 keer op de queryvalue toewijzing en de tweede keer op de c: toewijzing
    Happyness is nature's way of informing human resources that you're overpaid
    -Catbert: Evil director of HR
    pi_36753358
    hoe moet dat dan anders? want het werkt wel als ik juiste gegevens in het register heb dus snap niet waar de fout zit?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zaterdag 8 april 2006 @ 17:43:04 #80
    15929 DiRadical
    Everything's ruined
    pi_36770326
    quote:
    Op vrijdag 7 april 2006 22:42 schreef Chandler het volgende:
    hoe moet dat dan anders? want het werkt wel als ik juiste gegevens in het register heb dus snap niet waar de fout zit?
    Je zegt dat de directory niet bestaat.
    Dus zou het zo moeten
    1
    2
    3
    4
    5
    6
    7
    8
    9
    On Error GoTo topathErr
    If QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir") _
     > "" Then
    toDir.path = QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir")
            GoTo topathklaar
        End If
    topathErr:
       toDir.path = "c:\"
    topathklaar:


    De registry key wordt correct uitgelezen maar kan niet toegewezen worden aan toDir.path
    De applicatie springt naar topathErr:
    Maar
    1toDir.path = "c:" 

    geeft ook een foutmelding. Deze bestaat ook niet.
    Het moet
    1toDir.path = "c:\"

    zijn
    Happyness is nature's way of informing human resources that you're overpaid
    -Catbert: Evil director of HR
    pi_36770462
    correct, maar dan nog geeft het een error op toDir.path = QueryValue daar blijft het programma op hangen!

    oftweel hier zit het probleem op regel 3!! (toDir.)

    1
    2
    3
    4
    5
    On Error GoTo topathErr
        If QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir") > "" Then
            toDir.path = QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir")
            GoTo topathklaar
        End If
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_37380035
    Iets anders, hoe kun je iets berekenen.

    Ik heb iets in een textboxje staan en wil daar uit het getal halen en een getal bij optellen... hoe doe je dat? want form.text1.value + iets = de value van text1 + "iets" en het moet eingelijk zijn text1 + iets = ietsmeer

    Iemand een idee?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_37382955
    Tekst omzetten naar getal, berekening uitvoeren, uitkomst omzetten naar tekst.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_37383259
    ik dacht dat ik dat met INT kon doen maar dat gaat helaas ook niet werken int(text)
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_37384354
    CInt(), CLng() of CDbl()
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_37385990
    Inderdaad, maar toch is het probleem nog niet opgelost

    1
    2
    3
    4
    5
        If (HPtimer = mapleCalculator.maxHPsec.List(mapleCalculator.maxHPsec.ListIndex)) Then
            HPtimer = 0
            mapleCalculator.maxHPsaved.Text = CStr(CInt(mapleCalculator.maxHPsaved.Text) + _
                                              CInt(mapleCalculator.maxHPadd.Text))
        End If


    ik krijg nu weer een foutje, met of zonder cstr en snap niet wat ik fout doe!

    De fout krijg ik ook op het volgende

    1        mapleCalculator.maxMPsaved.Text = CInt(CStr(CInt(mapleCalculator.maxMPsaved.Text)))


    type-mismatch..

    iemand een idee?

    [ Bericht 18% gewijzigd door Chandler op 28-04-2006 22:11:34 ]
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_37424187
    reeds gefixt door val() te gebruiken, dit werkte namelijk ook.

    weer een andere, hoe kan ik een getal naar boven afronden ookal is het logischer om deze naar beneden af te ronden. bv 4.1 wordt 5
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      vrijdag 5 mei 2006 @ 15:51:08 #88
    15929 DiRadical
    Everything's ruined
    pi_37578966
    RoundUp en RoundDown functie
    quote:
    correct, maar dan nog geeft het een error op toDir.path = QueryValue daar blijft het programma op hangen!

    oftweel hier zit het probleem op regel 3!! (toDir.)

    1
    2
    3
    4
    5
     On Error GoTo topathErr
        If QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir") > "" Then
            toDir.path = QueryValue(HKEY_CURRENT_USER, "Software\quicktreecopy", "todir")
            GoTo topathklaar
        End If 
    Ook QueryValue moet een padnaam met een \ aan het eind terug geven, controleer de registry of maak een functie die een \ toevoegt als die niet aanwezig is.
    Happyness is nature's way of informing human resources that you're overpaid
    -Catbert: Evil director of HR
    pi_40651268
    Leuke vraag.

    Ik heb een applicatie die nogal wat data kopieeert, echter als ik die applicatie op de voorgrond houd zie ik alles wat er gebeurd. Maar als ik even een ander programma op de voorgrond heb en weer terug switch loopt als het ware de 'weergave' vast. Het programma blijft wel werken maar de weergave blijft staan. Heeft iemand een idee waardoor dit kan komen? en of hoe ik dit kan oplossen?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_40657471
    Je moet zorgen dat af en toe de events worden afgehandeld. Dat doe je met de functie DoEvents. Die moet je af en toe aanroepen in de loop die de data verwerkt. Je moet 'm ook niet te vaak aanroepen, want het zal er wel iets langzamer door worden.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_40691599
    Owkee, ik heb het geprobeerd en lijkt te werken.

    Nu een tweede vraag.

    Ik heb ooit een project van QuietGuy omgebouwd tot tray progie... echter krijg ik de balon niet precies onder de icon in de tray.

    source : http://dump.bruggema.nl/bwm.rar

    wie wil eens kijken wat ik fout heb gedaan!?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_46270829
    Een kickje omhoog
    Toch leuk om het oude vertrouwde VB 6 weer te zien
    Are you nuts??
    pi_47716402
    Ik ben er ook weer eens mee aan het pielen, Visual Basic 2005 Express (ja gratis :P ).

    Hoe kan ik kijken of een String in een Textbox alleen uit cijfers bestaat of ook uit text? Ik doe het volgende namelijk maar daar crashed ie (duh) op:
    1amountG1 = CDbl(txtGrade1.Text)


    Maar je kan niet converten naar een Double als er leeskarakters in staan. Dus ik moet eerst testen of er tekst in staat en dan een error geven (of op de Change al testen en dan gewoon de invoerknop disablen).
    pi_47722948
    Dat kan op verschillende manier, welke het handigste is hangt er van af wat je er verder mee wil.
    Als je de string naar een getal om wil zetten dan moet je eens kijken naar Interger.TryParse(), Double.TryParse() of Decimal.TryParse(). Je zou ook met Like kunnen kijken of er ongeldige tekens in staan. Een regular expression zou ook kunnen, maar dat is denk ik niet nodig.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_47723759
    Ok, tnx alvast, morgen ff naar kijken
    pi_47995659
    Tis gelukt Rembo, maar ik heb het gewoon gedaan met Val() zodat als er een String in staat het resultaat gewoon 0 is, dat werkte uiteindelijk ook

    Edit nvm al gelukt

    Andere vraag :
    Ik wil in een keer een hele grote groep labels en textboxes visible maken. Nou dacht ik slim te zijn en alle txtboves en labels ongeveer dezelfde naam te geven
    1lbl & [String] & [Double]

    En er dan doorheen te loopen zodat ik elke keer de Double kan verhogen met 1 zodat alle 29 labels niet meer visible gemaakt kunnen lopen.

    Maar ik kan hier natuurlijk geen .visible = True achter zetten.
    Iemand een idee hoe ik dit wel kan doen, snel en makkelijk zonder 2x 29 keer alles [NAAM].visible = True te doen?

    Zoiets dus:
    1
    2
    3
    4
                For Labelnummer = 1 To 29
                    Label = lbl & Job & Labelnummer
                    Label.Visible = True
                Next

    Label zou dan de naam van 29 verschillende labels worden die allemaal Visible = True moeten worden

    [ Bericht 44% gewijzigd door DaFan op 04-04-2007 13:02:06 ]
    pi_48003481
    quote:
    Op woensdag 4 april 2007 10:17 schreef DaFan het volgende:
    Tis gelukt Rembo, maar ik heb het gewoon gedaan met Val() zodat als er een String in staat het resultaat gewoon 0 is, dat werkte uiteindelijk ook
    Val() is zo'n wazige VB6 functie. Die kan je beter niet gebruiken.
    quote:
    Andere vraag :
    Ik wil in een keer een hele grote groep labels en textboxes visible maken. [...]
    Je zou de labels allemaal in een array kunnen zetten.
    Of misschien kan je er voor zorgen dat ze allemaal op 1 panel o.i.d. staan zodat je ze in 1x zichtbaar kan maken.
    Of je kunt door de controls collection van het form / panel / groupbox kunnen lopen.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_48027705
    quote:
    Op woensdag 4 april 2007 14:09 schreef SuperRembo het volgende:

    [..]

    Val() is zo'n wazige VB6 functie. Die kan je beter niet gebruiken.
    [..]

    Je zou de labels allemaal in een array kunnen zetten.
    Of misschien kan je er voor zorgen dat ze allemaal op 1 panel o.i.d. staan zodat je ze in 1x zichtbaar kan maken.
    Of je kunt door de controls collection van het form / panel / groupbox kunnen lopen.
    Een array van labels is het makkelijkste, dan wordt het ongeveer zo:
    1
    2
    3
    4
    5
    6
               
               Dim k as integer

               For k = 0 To 29
                    Label(k).Visible = True
               Next


    Een array is te maken door één label te copieren en dan te plakken, wel voor array kiezen als VB dat vraagt.

    [ Bericht 1% gewijzigd door The_Terminator op 05-04-2007 12:27:11 ]
      donderdag 5 april 2007 @ 07:59:44 #99
    52513 whosvegas
    The Trickster
    pi_48031041
    quote:
    Val() is zo'n wazige VB6 functie. Die kan je beter niet gebruiken.

    Hoezo, als je weet wat de functie doet, waarom zou je het niet gebruiken?
    Are you nuts??
    pi_48039959
    Val() bestaat eigenlijk alleen nog om VB wat beter backwards compatible te maken. Als je nieuwe code schrijft is het niet handig om oude VB functies als Val(), Mid() en Format() te gebruiken.
    Val() ondersteunt alleen een decimale punt, bij Double.Parse kan je makkelijk gelocaliseerde input ondersteunen. String functies als Mid() gebruiken een 1-based index terwijl alle "normale" .NET functies een 0-based index gebuiken.
    En dan zitten er ook nog vreemde bugs in. Replace("", "foo", "bar") geeft in VB.NET bijvoorbeeld Nothing terug in plaats van een lege string.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')