» »

[VB.NET] Izpisovanje v TextBox in prekinitve

[VB.NET] Izpisovanje v TextBox in prekinitve

Alfa1 ::

Pozdravljeni!

No nekako bi lahko rekel, da sem bil prisiljen pričeti programirati v VB.NET, ker je baje za začetnika najprimernejši. Vendar kot vsak začetnik sem tudi jaz naletel na problem/čke in vas prosim zato za pomoč

Imam dva problema v VB.NET.:
Prvi:
Ko kliknem gumb se prične izvajat FOR ali While zanka in želim rezultat sproti izpisovati v TextBox-u. Problem pa je, da mi podatka ne izpisuje sproti ampak počaka, da se celotna FOR zanka izvede in šele nato pokaže končni rezultat. Zanimivo je, da če uporabim ukaz: Me.Text=k, kjer je k moja spremenljivka se mi v Form-u pa lepo povrsti-sproti torej izpisujejo rezultati. Moti me le, da bi takšno sprotno izpisovanje rad imel v textBoxu. Poskusil sem tudi z Label in ListBoxom, pa ne gre oz. nimam pojma.

Drugi problem:
Med izvajanjem FOR zanke, ki je zelo dolga, bi želel narediti prekinitev. Problem, je da mi med izvajanjem for zanke program "zablokira" dokler jo izvaja in ne morem pritisniti nobenega gumba. Program lahko prekinem le na silo in pojavi se napaka, kar me sicer ne moti, ampak bi želel bolj lagoden ziroma "mehak" izklop programa.

Za kakršnokoli pomoč, bom zelo hvaležen.

Lep pozdravček

Matjaž
  • spremenilo: CCfly ()

OwcA ::

Pomaga, če priložiš težavno kodo.
Otroška radovednost - gonilo napredka.

Alfa1 ::

Hvala za hiter odgovor!
Težavna koda, predvidevam da se nanaša na drugi problem, problem težavne koed je, da želim da se program izvaja kar se da hitro.

Kar se tiče prvega problema se rezultat izpisuje sproti če pre izpisom uporabim ukaz MessageBox in da mi rezultat prikaže tudi v messageboxu. Zadeva je edino nerodna, ker je stalno potrebno klikat OK, to pa ni prava rešitev

Hvala še enkrat

losnah ::

Za drugi problem probi DoEvents()
Mogoče boš s tem rešu tut prvi problem??????

smash ::

medtem ko izvajaš for zanko naredi refresh forme po vsakem zapisu v textbox

Alfa1 ::

Hvala vam vsem. Bom poskusil.

Lep pozdrav!

Matjaž

camx ::

Uporabi Application.DoEvents() -> dodaj pred konec zanke.

fx ::

Mene samo zanima, če je kaka razlikam med VB in VB.net pri branju in pisanju v datoteko?

Lp,

klemen22 ::

DoEvents()

A to so v VBju neke vrste threadi?
Motiti se je človeško, odpuščati pa božje. Torej ti odpuščam ;)

frudi ::

kolko vem se DoEvents() vleče iz prejšnjih verzij VBja.
v .NET so threadi dovolj enostavni, da se jih lahko loti vsak noob :), tako da je 'lepše' problem osveževanja form rešit z ločevanjem delovnih in gui threadov.
1ACDoHVj3wn7N4EMpGVU4YGLR9HTfkNhTd... in case I've written something useful :)

StratOS ::

No v VB-ju

Pa moreš imet glih ta For ... Next
Lahko narediš kaj takega recimo :

For
.
Doevents
.
if Prekini=True then exit for:goto Nadaljuj
.
Next

ali z


Loop
.
Doevents
.
.
until Prekini=True


... pa še veliko ostalih.

Doevents pomaga da dobiš kontrolo do ostalih stvari, pri čem lahko recim stisneš na alla končaj gumb z globalno spremenljivko Prekini, ki takoj zaključi zanko.
"Multitasking - ability to f##k up several things at once."
"It works better if you plug it in."
"The one who is digging the hole for the other to fall in is allready in it."

destiny ::

glede 1. problema: refresh izvedi samo na textboxu, da ne boš po nepotrebnem celotne forme refreshal.

darkolord ::

DoEvents v bistvu počaka, da se sprocesirajo vsa sporočila, ki čakajo v trenutnem oknu

StratOS: goto Nadaljuj je tam čisto nepotreben

Zgodovina sprememb…

  • spremenilo: darkolord ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

lpt light show

Oddelek: Programiranje
5753 (698) Looooooka
»

Visual basic noob question

Oddelek: Programiranje
111559 (1314) DonMatejo
»

[VB6] Program Odštevalnik - verjetno preprosta rešitev ampak jest je ne najdem (strani: 1 2 )

Oddelek: Programiranje
515247 (4721) Nerdor
»

VB6 - brisanje datotek - pomoč

Oddelek: Programiranje
121164 (1036) darkolord
»

VB6 - ne zaključi proces programa - pomoč !!!

Oddelek: Programiranje
131388 (1229) Mavrik

Več podobnih tem