Ga naar inhoud


Aanbevolen berichten

Geplaatst:

ik ben even begonnen met een VB app die over de seriele poort praat met de dreambox (een cisco router en switch in mijn geval, haha)..

 

misschien handig om te laten loggen en niet zelf een spatie meppen en de output veranderen, misschien later nog i.c.m. netwerkboot o.i.d. ?

 

anyway, ik zit ongelovelijk te klooien met de snelheid waarop de textbox scrolt.

 

als er dus data binnenkomt van de seriele poort, komt dit in de textbox (richtextbox in dit geval) te staan en scrolt het d.m.v. de Text1.SelStart = Len(Text1.Text).

 

heb ik 1 scherm vol (dus zonder history) dan is het wel snel, maar hoe meer history er komt, hoe trager het wordt, op zich logisch aangezien ik ook commando's gebruik als:

 

Text1.Text = Mid(Text1.Text, 1, Len(Text1.Text) - 11) (past de textbox aan door een stuk van het einde af te halen en hem opnieuw laat zien).

 

de inkomende data wordt NIET gelijk in de textbox gezet, maar wordt eerst in een string gedouwd totdat de receivebuffer leeg is, dan pas wordt de textbox aangepast, volgens mij gaat dit al te snel.

 

anyway, is er een VB kenner die hier misschien een oplossing voor weet ?

 

bootman.jpg

 

de sourcecode staat trouwens op de dreamdev ftp server:

 

ftp://dreamdev:defdream@dreambox.gamesquad.nl:2006

 

(let op de deFdream)

 

dreambox.gamesquad.nl wordt binnenkort vervangen door dreamDEV.gamesquad.nl, morgen kan de dns aangepast worden.

domme vragen bestaan niet, domme mensen wel.

Geplaatst:

heb net even een nieuwe versie neer gezet, de "oude" had nogal een delay bij het starten

 

form1.show en daarna even een doevents geadd..

domme vragen bestaan niet, domme mensen wel.
Geplaatst:

Waarom gebruik je eigenlijk een richtextbox?

Een textbox met de multiline property op true doet hetzelfde maar heeft aanzienlijk minder overhead.

 

Of nog beter.... een listbox.

Hiermee kun je eenvoudig een regel toevoegen en een regel deleten.

 

Gr,

Sunny.

Still dreaming about the box.....

Geplaatst:

een textbox had ik eerst, maar is net zo traag.

een listbox heb ik inderdaad op internet ook gelezen, maar dan moet ik een apart invoerveld gaan maken.

 

er moet toch wel een manier zijn om dit gewoon goed te krijgen ? ik zou de lines kunnen tellen en vanaf bovenaf kunnen verwijderen (net zoals bij een listbox), maar dan heb je geen history meer en dat is lastig bij het booten <img src="/ubbthreads/images/graemlins/smile.gif" alt="" />

 

maar okay, ik zal eens kijken hoe het werkt met een listbox

domme vragen bestaan niet, domme mensen wel.
Geplaatst:

Probeer dit es:

 

Public Sub AddOutput(strCOMOutput As String)

RichTextBox1.SelStart = 2000000000

RichTextBox1.SelText = strCOMOutput & vbCrLf

End Sub

 

Door de stringlengte groter te zetten dan de werkelijke waarde wordt de property automatisch op de juiste grootte gezet. Daarnaast voeg je alleen de nieuwe output toe aan de richtextbox, wat vele male sneller is dan alles opnieuw toevoegen.

 

Ik hoop dat het werkt! <img src="/ubbthreads/images/graemlins/biggthumpup.gif" alt="" />

 

Geplaatst:
Citaat:
Probeer dit es:

Public Sub AddOutput(strCOMOutput As String)
RichTextBox1.SelStart = 2000000000
RichTextBox1.SelText = strCOMOutput & vbCrLf
End Sub

Door de stringlengte groter te zetten dan de werkelijke waarde wordt de property automatisch op de juiste grootte gezet. Daarnaast voeg je alleen de nieuwe output toe aan de richtextbox, wat vele male sneller is dan alles opnieuw toevoegen.

Ik hoop dat het werkt! <img src="/ubbthreads/images/graemlins/biggthumpup.gif" alt="" />

bedankt voor de suggestie <img src="/ubbthreads/images/graemlins/smile.gif" alt="" />
ik zal eens kijken of dit werkt.

die selstart met een enorme waarde heeft op zich geen zin, aangezien ik len(text.text) al gebruik en die altijd de juiste lengte pakt.

ik zou inderdaad eens kunnen gaan spelen met seltext, net zoals ik als laatste gedaan heb met de keyboard input (dus dit nu ook gebruiken voor seriele input/output).

maar volgens mij was het probleem dat hij mijn commando ook ziet als output (dus voor de inkomende data aan) en ik dan dubbele commando's te zien krijg op het scherm, een optie zou misschien zijn door een len(text1.text) te gebruiken, daar de label1.caption vanaf te trekken en vanaf daar een seltext te gebruiken.

anyway, thnx en ik zal vanavond eens ff kijken <img src="/ubbthreads/images/graemlins/biggthumpup.gif" alt="" />
domme vragen bestaan niet, domme mensen wel.
Geplaatst:

Het idee achter die grote waarde is dat er geen string geparst hoeft te worden voor de lengte te bepalen, wat je dus met die Len wel doet. Doordat het buffer groot genoeg is voor die richtextbox plakt ie het gewoon achter de bestaande text(=gevulde bufferruimte).

 

Anyway, ik hoor wel van je bevindingen!

 

PosiXX

Geplaatst:

mijn exe is gecompiled op 9600,n,8,1 RTS aan, e.d.

aangezien ik nog geen box heb kan ik het niet testen, waarschijnlijk moet hij op 115200 gezet worden.

 

gewoon ff pielen met de settings van de mscomm1 component

domme vragen bestaan niet, domme mensen wel.

Maak een account aan of log in om te reageren

Je moet een lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Registreer voor een nieuwe account in onze community. Het is erg gemakkelijk!

Registreer een nieuwe account

Inloggen

Heb je reeds een account? Log hier in.

Nu inloggen
  • Wie is er online   0 leden

    • Er zijn geen geregistreerde gebruikers deze pagina aan het bekijken
×
×
  • Nieuwe aanmaken...