vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Problem mit Schleife 
Autor: zwergschauzer
Datum: 27.08.07 10:06

Ich möchte das mein Programm den Bildschirm abtastet und überprüft wenn eine bestimmte Stelle weiss ist. (Nach dem ersten weissen Pixel Schleife beenden) Dabei übergebe ich der Funktion "GetColor" die x, y Koordinate und erhalte damit den Long Farbwert des Pixels. Diesen lasse ich mit diesem Tip
http://www.vbarchiv.net/archiv/tipp_107.html
in die RGB Werte aufspalten. Die Schleife:

Private Sub Command1_Click()
Dim lngColor As Long
Dim x, y As Long
Command1.Caption = "Suche"
y = 500
Do
    x = 174
    Do
        x = x + 1
 
        lngColor = GetColor(x, y)
        Label1.Caption = "x: " & x
        Label2.Caption = "y: " & y
        DoEvents
        If ColorRed(lngColor) + ColorBlue(lngColor) + ColorGreen(lngColor) _
          >= 700 Then
        List2.AddItem (x & " " & y)
        End If
    Loop Until List2.ListCount >= 1 Or x >= 850
    y = y - 7
Loop Until List2.ListCount >= 1 Or y <= 100
 
Command1.Caption = "Fertig"
End Sub
funktioniert auch zu Beginn noch wunderbar, jedoch wird ab y ~ 402 beim Label2 kein y wert mehr angezeigt und x bleibt bei 617 stehen. Die CPU Auslastung bleibt jedoch hoch. Die Schleife scheint also noch zu laufen.

Vielleicht geh ich ja auch nur zu kompliziert an das Ausgangsproblem heran. Dieses ist Folgendes: Es befindet sich irgendwo auf dem Bildschirm weisser Text ( nicht 100%ig weiss) diesen möchte ich finden. Der Hintergrund kann eigentlich jede Farbe haben (wenn ich pech habe ist dort auch ein Pixel weiss, da müsste ich dann doch alle weissen Stellen in List2 eintragen und überprüfen in welchem Bereich viele weisse Pixel sind und wo nur ein oder zwei, das kann ich aber erst wenn die Schleife funktioniert)
P.S. Wenn ich bei "Loop Until" den ListCount nicht Beachte sondern nur den x und y Wert bleibt das Problem unverändert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Problem mit Schleife674zwergschauzer27.08.07 10:06
Re: Problem mit Schleife382Zardoz27.08.07 15:16
Re: Problem mit Schleife431zwergschauzer28.08.07 19:12
Re: Problem mit Schleife416Zardoz28.08.07 20:05

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel