tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
522
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    morph3uz morph3uz ist offline Rookie
    Registriert seit
    Oct 2008
    Beiträge
    7
    Hallo liebe Community,
    ich habe ein Problem mit der GetPixel-Funktion:
    Sie liefert immer den gleichen Wert!

    Hier mal ein Code in dem ich GetPixel (erfolglos) verwende:
    Ich habe auch ein Hintergrundbild für die Form1 importiert und die Hintergrundfarbe mal auf Rot gesetzt, aber keine Veränderungen.
    Code:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    Public Class Form1
     
        Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long) As Long
        Private Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
        'Private Declare Function GetActiveWindow Lib "user32" () As Long
     
        Private Sub Form1_MouseClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseClick
            Dim lngScreen, lngColor As Long
            lngScreen = GetWindowDC(0)
            lngColor = Form1.GetPixel(lngScreen, MousePosition.X, MousePosition.Y)
            MsgBox(CStr(lngColor) & vbCrLf & CStr(Hex(lngColor)))
        End Sub
    End Class

    Ist es möglich, dass die Mausposition in der Maus liegt, also auf dem Rand, und daher immer nur der Farbwert der Maus angezeigt wird?
    Also ich habe es auch schon so probiert, indem ich jeweils von der X und Y Koordinate 5 Pixel abgezogen habe, auch ohne Erfolg...

    Ich hoffe ihr findet den Fehler und könnt mir helfen.
    Danke, mfg
    morph3uz
     

  2. #2
    Avatar von chmee
    chmee chmee ist offline mod | media
    tutorials.de Moderator
    Registriert seit
    Apr 2004
    Ort
    Berlin bei Potsdam
    Beiträge
    7.630
    Blog-Einträge
    4
    Ist bei mir schon ein paar Tage her mit .Net-Code, aber

    1. Nicht alle Objekte unterstützen GetPixel ( Was ist denn das Ergebnis, dass Du ausliest ? )
    2. Leg doch noch ein Bitmap-Objekt auf die Form1, an welcher Du dann das GetPixel anwendest.

    3. Vielleicht hilft Dir das weiter:
    http://www.csharp411.com/c-getpixel-and-setpixel/
    http://www.mycsharp.de/wbb2/print.ph...71039e3e08ac0a

    mfg chmee
     
    Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
    Benutzt den DANKE-Knopf oder bewertet den Beitrag

    "GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
    -> Regexp <- -> php <- -> Javascript <-

  3. #3
    morph3uz morph3uz ist offline Rookie
    Registriert seit
    Oct 2008
    Beiträge
    7
    Nun, danke ersteinmal für eine Antwort. Aber leider funktioniert es so nicht.
    Auf die Frage, was ich erhalte:
    Ich lasse mir die Werte jetzt so anzeigen:
    Code :
    1
    2
    
    TextBox1.Text = CStr(lngScreen)
            TextBox2.Text = CStr(Hex(lngScreen))
    Ich hoffe mal das ist richtig so und verfälscht nicht das Ergebnis...
    Also es gibt keinen festen Wert... nach jedem Klick (auf die selbe Stelle!) verändert sich der Wert nochmal... warum auch immer...

    Hier mal ein paar Werte:
    Long: 8976214555311018915
    Hex: 7C91EB947D0113A3

    Long: 8976214556300875713
    Hex: 7C91EB94B80117C1

    Long: 8976214555747227604
    Hex: 7C91EB94970117D4

    So geht das dann immer weiter...

    Hoffe jemand weiß woran es liegt.

    Mal hier mein eigentliches Ziel:
    Ich versuche mir einen Bot zu programmieren, der zuerst die gedrückten Tasten scannt und wartet bis eine ganz bestimmte taste gedrückt wurde. Danach wird der Timer aktiviert. Dieser soll einen Code aufrufen,d er den Bildschirm meines Spiels (das im Vollbild im Vordergrund läuft) scannen und dann an 3 Positionen des Bildchirms die Farbe auslesen. Stimmen alle 3 Werte mit 3 Konstanten überein, so wird ein Tastendruch mit Hilfe von Sendkeys an das Spiel gesendet...

    Danke im Voraus

    MFG, morph3uz
     

Ähnliche Themen

  1. Textur immer im gleichen Verhältnis
    Von reublack im Forum Cinema 4D
    Antworten: 2
    Letzter Beitrag: 02.06.10, 15:02
  2. GetPixel liefert imer gleichen Farbwert!
    Von morph3uz im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 13.10.08, 22:15
  3. Bilder immer in der gleichen Grösse
    Von truderich im Forum PHP
    Antworten: 3
    Letzter Beitrag: 01.07.06, 23:33
  4. Pop-Ups immer im gleichen Fenster öffnen
    Von geos im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 21.04.06, 13:22
  5. Immer die gleichen Datensätze
    Von Sneakers im Forum PHP
    Antworten: 3
    Letzter Beitrag: 24.01.05, 15:34