|
| Autor |
Nachricht |
raptor0576 Tutorial Leser

Anmeldedatum: 03.05.2008 Beiträge: 20
|
Laggy Textbox
Verfasst am: 21.05.2008, 16:17 |
|
|
hi erstmal 
ich hab eine form mit 2 textboxen drauf, und einem timer. der timer hat einen interval von 1000 ms. jetzt ist es so wenn ich etwas längeres in die textbox schreibe dann laggt es zwischendurch also die sichtbare texteingabe wird verzögert...[img]/sad.gif[/img]
ich gehe davon aus dass es an dem timer liegt, nur ist dieser leider unerlässlich. in dem timer stehen lediglich 3 if abfragen, jedoch wird bei diesen etwas aus einer sql db abgerufen... kann es sein dass die übertragungs geschwindigkeit in verbindung mit den if abfragen die text darstellung zu verzögern bringen?
bzw. wie kann ich dies unabhängig voneinander machen? also den timer verarbeiten ohne dass die form irgendwie paused wird oder was auch immer;)
bitte um schnelle hilfe 
mfg |
|
| |
|
 |
Marduk Überflieger

Anmeldedatum: 16.04.2008 Beiträge: 374
|
Verfasst am: 21.05.2008, 16:26 |
|
|
| Ne Möglichkeit wäre die Einbindung von Threads. Dass die SQL Abfrage im Hintergrund läuft und du nur per Timer den Thread starten musst. So könnte das seperat bearbeitet werden und du solltest keine Probleme beim Eingeben haben. |
|
| |
|
 |
raptor0576 Tutorial Leser

Anmeldedatum: 03.05.2008 Beiträge: 20
|
Verfasst am: 21.05.2008, 17:13 |
|
|
danke schonmal, aber ich hab mich noch nicht mit threads beschäftigt vielleicht kannste mir paar infos geben wie ich eine erstelle und aufrufe 
mfg |
|
| |
|
 |
Marduk Überflieger

Anmeldedatum: 16.04.2008 Beiträge: 374
|
|
| |
|
 |
sollniss Überflieger

Anmeldedatum: 01.05.2008 Beiträge: 699
|
Verfasst am: 21.05.2008, 17:40 |
|
|
| Ein DoEvents() im Timer müsstes auch packen. |
|
| |
|
 |
raptor0576 Tutorial Leser

Anmeldedatum: 03.05.2008 Beiträge: 20
|
Verfasst am: 21.05.2008, 18:25 |
|
|
mit doevents hauts bei mir net hin. vielleicht hab ich da iwas falsch gemacht...
das mit den threads hab ihc mir angeschaut, die dll compiliert und eingebunden aber weis noch nicht genau wie ich damit den gesamten timer im hintergrund laufen lassen soll....
mfg |
|
| |
|
 |
Marduk Überflieger

Anmeldedatum: 16.04.2008 Beiträge: 374
|
Verfasst am: 21.05.2008, 18:31 |
|
|
| Nicht den Timer im Hintergrund laufen lassen, sondern per Timer nur den Hintergrundthread starten lassen. Der Timer muss nicht als Thread laufen, nur deine SQL-Abfrage |
|
| |
|
 |
raptor0576 Tutorial Leser

Anmeldedatum: 03.05.2008 Beiträge: 20
|
Verfasst am: 21.05.2008, 23:59 |
|
|
(Marduk;2600) Nicht den Timer im Hintergrund laufen lassen, sondern per Timer nur den Hintergrundthread starten lassen. Der Timer muss nicht als Thread laufen, nur deine SQL-Abfrage |
so gesehn hast natürlich recht^^  sry manchma ist man aber auch wie behämmert  i edit:// leider funzt das alles nicht [img]/sad.gif[/img]
es ist immernoch verzögert egal wie man es dreht... hier der code:
Option Explicit Private WithEvents background As NetFX20Wrapper.BackgroundWorkerWrapper
Public Sub StartBackground(background As NetFX20Wrapper.BackgroundWorkerWrapper, argument As Variant) If Abfrage End Sub
Private Sub Form_Load() Set background = New NetFX20Wrapper.BackgroundWorkerWrapper End Sub
Private Sub timeIT_Timer() StartBackground background, "Test Operation" End Sub |