/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Loop !?
Fra : Lasse Madsen


Dato : 01-04-02 18:01

Hvor flovt det end lyder har jeg svært ved at bruge loop funktionen

jeg vil gerne læse noget fra seriel porten dette gør jeg med kommandoen
str = IO1.ReadString() ' (str er defineret som en string)

jeg trode at jeg kunne skrive

until str = "k" loop
str = IO1.ReadString()
end loop

meeen ... sådan gør man ikke i vb :/

Så hvordan formulere man det overstående korrekt i vb sprog ?

M.v.h.
Lasse Madsen





 
 
Tim Sørensen (01-04-2002)
Kommentar
Fra : Tim Sørensen


Dato : 01-04-02 18:38

"Lasse Madsen" <Lasse.madsen@elektronik.dk> wrote in message
news:a8a3q5$10o7$1@news.cybercity.dk...
> jeg trode at jeg kunne skrive
>
> until str = "k" loop
> str = IO1.ReadString()
> end loop

Nu må du ikke hænge mig op på det, men
jeg tror at dette kan lade sig gøre:

Do Until str = "k"
str = IO1.ReadString()
Loop

--
Mvh....Tim Sørensen
http://www.dondata.dk/



Lasse Madsen (01-04-2002)
Kommentar
Fra : Lasse Madsen


Dato : 01-04-02 19:04

Tak for tippet ...
det virker fint

M.v.h.
Lasse Madsen


"Tim Sørensen" <dondata@vip.cybercity.dk> wrote in message
news:a8a5qh$13vu$1@news.cybercity.dk...
> "Lasse Madsen" <Lasse.madsen@elektronik.dk> wrote in message
> news:a8a3q5$10o7$1@news.cybercity.dk...
> > jeg trode at jeg kunne skrive
> >
> > until str = "k" loop
> > str = IO1.ReadString()
> > end loop
>
> Nu må du ikke hænge mig op på det, men
> jeg tror at dette kan lade sig gøre:
>
> Do Until str = "k"
> str = IO1.ReadString()
> Loop
>
> --
> Mvh....Tim Sørensen
> http://www.dondata.dk/
>
>



Lasse Madsen (02-04-2002)
Kommentar
Fra : Lasse Madsen


Dato : 02-04-02 02:01

Hej igen tim...
Jeg ville gerne have status baren til at fortælle mig hvad der "sker" ...
jeg har konfigureret statusbaren til simple mode ... og her er koden jeg
bruger

<vb kode>
private sub command1.click()
sbStatusBar.SimpleText = "Processing..." ' start opgave ...
result = IO.WriteString("a") ' sender et a ud serielt
result = IO.WriteString("a") ' sender et a ud serielt
result = IO.WriteString("1") ' sender et 1 ud serielt
Do Until str = "k" ' vent indtil processoren retunere et
k
str = IO.ReadString(1)
Loop
sbStatusBar.SimpleText = "Finished" ' vis finished i statusbaren
end sub

</vb kode>

Jeg har en masse knapper med den kode i ... første gang jeg kører mit
program skriver den også processing og så går der ca 2sek så retuneres et
"k" og så skriver process baren Finished ... problemet er så at næste gang
jeg trykker på en knap står der bare finished i statusbaren og det bliver
der ved med ...

Hvad gør jeg galt ? nogen ideer ?

På forhånd tak
Lasse Madsen




Tim Sørensen (02-04-2002)
Kommentar
Fra : Tim Sørensen


Dato : 02-04-02 13:14

"Lasse Madsen" <Lasse.madsen@elektronik.dk> wrote in message
news:a8avv7$2bf8$1@news.cybercity.dk...
> Hej igen tim...
> Jeg ville gerne have status baren til at fortælle mig hvad der "sker" ...
> jeg har konfigureret statusbaren til simple mode ... og her er koden jeg
> bruger
>
> <vb kode>
> private sub command1.click()
> sbStatusBar.SimpleText = "Processing..." ' start opgave ...
> result = IO.WriteString("a") ' sender et a ud serielt
> result = IO.WriteString("a") ' sender et a ud serielt
> result = IO.WriteString("1") ' sender et 1 ud serielt
> Do Until str = "k" ' vent indtil processoren retunere
et
> k
> str = IO.ReadString(1)
> Loop
> sbStatusBar.SimpleText = "Finished" ' vis finished i statusbaren
> end sub
>
> </vb kode>
> Jeg har en masse knapper med den kode i ... første gang jeg kører mit
> program skriver den også processing og så går der ca 2sek så retuneres et
> "k" og så skriver process baren Finished ... problemet er så at næste gang
> jeg trykker på en knap står der bare finished i statusbaren og det bliver

Prøv:

<vb kode>
Private Cub Command1_Click()
sbStatusBar.SimpleText = "" ' Ryd StatusBaren, inden der begyndes
sbStatusBar.SimpleText = "Processing..." ' start opgave ...
result = IO.WriteString("a") ' sender et a ud serielt
result = IO.WriteString("a") ' sender et a ud serielt
result = IO.WriteString("1") ' sender et 1 ud serielt
Do Until str = "k" ' vent indtil processoren retunere et
k
str = IO.ReadString(1)
Loop
sbStatusBar.SimpleText = "Finished" ' vis finished i statusbaren
end sub
</vb kode>




Rayman (02-04-2002)
Kommentar
Fra : Rayman


Dato : 02-04-02 19:48

Prøv at sætte str="", det ser ud som om det er en modul variabel, og ikke en
lokal, som det måske burde være?


Mvh. Rayman

"Tim Sørensen" <dondata@vip.cybercity.dk> wrote in message
news:a8c76j$q5d$1@news.cybercity.dk...
> "Lasse Madsen" <Lasse.madsen@elektronik.dk> wrote in message
> news:a8avv7$2bf8$1@news.cybercity.dk...
> > Hej igen tim...
> > Jeg ville gerne have status baren til at fortælle mig hvad der "sker"
....
> > jeg har konfigureret statusbaren til simple mode ... og her er koden jeg
> > bruger
> >
> > <vb kode>
> > private sub command1.click()
> > sbStatusBar.SimpleText = "Processing..." ' start opgave ...
> > result = IO.WriteString("a") ' sender et a ud serielt
> > result = IO.WriteString("a") ' sender et a ud serielt
> > result = IO.WriteString("1") ' sender et 1 ud serielt
> > Do Until str = "k" ' vent indtil processoren retunere
> et
> > k
> > str = IO.ReadString(1)
> > Loop
> > sbStatusBar.SimpleText = "Finished" ' vis finished i statusbaren
> > end sub
> >
> > </vb kode>
> > Jeg har en masse knapper med den kode i ... første gang jeg kører mit
> > program skriver den også processing og så går der ca 2sek så retuneres
et
> > "k" og så skriver process baren Finished ... problemet er så at næste
gang
> > jeg trykker på en knap står der bare finished i statusbaren og det
bliver
>
> Prøv:
>
> <vb kode>
> Private Cub Command1_Click()
> sbStatusBar.SimpleText = "" ' Ryd StatusBaren, inden der begyndes
> sbStatusBar.SimpleText = "Processing..." ' start opgave ...
> result = IO.WriteString("a") ' sender et a ud serielt
> result = IO.WriteString("a") ' sender et a ud serielt
> result = IO.WriteString("1") ' sender et 1 ud serielt
> Do Until str = "k" ' vent indtil processoren retunere
et
> k
> str = IO.ReadString(1)
> Loop
> sbStatusBar.SimpleText = "Finished" ' vis finished i statusbaren
> end sub
> </vb kode>
>
>
>



Lasse Madsen (03-04-2002)
Kommentar
Fra : Lasse Madsen


Dato : 03-04-02 22:24

> Prøv at sætte str="", det ser ud som om det er en modul variabel, og ikke
en
> lokal, som det måske burde være?

Hvordan skal jeg så tjekke om seriel porten har modtaget et "k" ?

M.v.h.
Lasse Madsen



Rayman (04-04-2002)
Kommentar
Fra : Rayman


Dato : 04-04-02 16:39

Altså sådan:

str=""
Do Until str = "k"
IO.ReadString(1)
Loop


Mvh Rayman.

"Lasse Madsen" <Lasse.madsen@elektronik.dk> wrote in message
news:a8fs0r$2u0f$1@news.cybercity.dk...
> > Prøv at sætte str="", det ser ud som om det er en modul variabel, og
ikke
> en
> > lokal, som det måske burde være?
>
> Hvordan skal jeg så tjekke om seriel porten har modtaget et "k" ?
>
> M.v.h.
> Lasse Madsen
>
>



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste