myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

AHK Hilfe Gesucht

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 05.03.12, 12:45   #1
BeerCorpse
Anfänger
 
Registriert seit: Sep 2010
Beiträge: 14
Bedankt: 2
BeerCorpse ist noch neu hier! | 0 Respekt Punkte
Standard AHK Hilfe Gesucht

Erstmal einen schönen guten Tag.
Ich brauche Hilfe für folgendes Problem:

Wenn ich ein Bild nach Pixeln auslese möchte ich dieses gerne in einer GUI anzeigen lassen, allerdings möchte ich nur die weiße farbe von dem Bild auf den schwarzen Hintergrund der GUI einblenden.

Das Problem ist das ich einfach nichts finde wie ich einzelne Pixel an bestimmten Koordinaten ändern kann.

Wenn mir doch bitte jemand ein Befehl nennen und beschreiben kann der dazu in der Lage ist wäre ich im dafür sehr dankbar !
BeerCorpse ist offline   Mit Zitat antworten
Ungelesen 05.03.12, 16:45   #2
Thelvan
Erfahrenes Mitglied
 
Registriert seit: Jul 2010
Beiträge: 493
Bedankt: 236
Thelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt PunkteThelvan erschlägt nachts Börsenmakler | 5269 Respekt Punkte
Standard

Welche Programmiersprache?
Thelvan ist offline   Mit Zitat antworten
Ungelesen 07.03.12, 20:30   #3
BeerCorpse
Anfänger
 
Registriert seit: Sep 2010
Beiträge: 14
Bedankt: 2
BeerCorpse ist noch neu hier! | 0 Respekt Punkte
Standard

Na (AHK)Autohotkey, also nichts Weltbewegendes^^
BeerCorpse ist offline   Mit Zitat antworten
Ungelesen 09.03.12, 00:03   #4
waldfee0071
Ist öfter hier
 
Benutzerbild von waldfee0071
 
Registriert seit: Nov 2009
Beiträge: 222
Bedankt: 189
waldfee0071 ist noch neu hier! | 0 Respekt Punkte
Standard

kenne ich mit autohotkey nun absolut nicht aus, aber da ja sonst keiner hier antwortet.
laut dokumentation sollte das recht einfach sein.

[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]

sollte dir dabei helfen
waldfee0071 ist offline   Mit Zitat antworten
Ungelesen 09.03.12, 12:14   #5
BeerCorpse
Anfänger
 
Registriert seit: Sep 2010
Beiträge: 14
Bedankt: 2
BeerCorpse ist noch neu hier! | 0 Respekt Punkte
Standard

Ich weiß deine Hilfsbereitschaft zu schätzen =)
aber leider muss ich dir sagen das mir dies nicht weiter hilft.
ich kenne mich ja schon ein wenig aus und kenne auch diesen befehl, nur lässt sich damit nur der Pixel an einer bestimmten Position auslesen, aber leider nicht verändern

kannst du mir eine Sprache empfehlen mit der ich das kann, damit ich den s***** dann einbinden kann ?
BeerCorpse ist offline   Mit Zitat antworten
Ungelesen 20.03.12, 08:13   #6
BeerCorpse
Anfänger
 
Registriert seit: Sep 2010
Beiträge: 14
Bedankt: 2
BeerCorpse ist noch neu hier! | 0 Respekt Punkte
Standard

Ok, ich habe jetz eine lösung gefunden.
Für alle die eventuell das selbe problem haben könnten oder mal haben werden, werde ich hier mal eine lösung posten:

Allerdings können pixel meines wissens nur in einer gui verändert werden.
Wie ihr aber allerdings wisst kann eine gui auch durchsichtig gemacht werden.
Diese pixel sind in wirklichkeit steuerelemente mit der größe eines pixels und brauchen daher etwas zeit um gesetzt zu werden(kommt natürlich darauf an wieviele gesetzt werden).

Rot: Wenn man einen pixel setzt dann hat dieser pixel einen rahmen von 2 pixeln, diese funktion lässt diesen allerdings verschwinden

Blau: Dies ist der pixel der gesetzt wird. Der erste wert steht für die X koordinate und der zweite für die y koordinate, der dritte wert steht für die größe und der letzte für die farbe(die farbe kann auch als farbcode angegeben werden).

Zitat:
Gui, Show, w250 h200, gui1: unique title Gui

SelectCanvas( "gui1: unique title" )


SetPixel( 5, 15, 10, "blue" )
SetPixel( 50, 30, 5, "green" )
SetPixel( 100, 80, 70, "yellow" )


return
GuiClose:
ExitApp
SelectCanvas( p_title=false )
{
static hw_canvas
if ( !p_title )
return, hw_canvas
Process, Exist
WinGet, hw_canvas, ID, %p_title% ahk_class AutoHotkeyGUI ahk_pid %ErrorLevel%
}
SetPixel( p_x, p_y, p_size, p_color )
{
static total
total++
Gui, Add, Progress, % "x" ( p_x-1 ) " y" ( p_y-1 ) " w" ( p_size+2 ) " h" ( p_size+2 ) " background" p_color
hw_canvas := SelectCanvas()
; WS_EX_STATICEDGE
Control, ExStyle, -0x20000, msctls_progress32%total%, ahk_id %hw_canvas%
WinSet, Redraw,, ahk_id %hw_canvas%
}

Bei folgendem kann auf die funktion verzichtet werden, allerdings hat man dann den rahmen.
Die variablen werte können auch direkt eingesetz werden, bei der farbe allerdings nicht.

Zitat:
Gui, Show, w250 h200, gui1: unique title Gui
p_color = blue
p_x = 50
p_y = 80
p_size = 20
Gui, Add, Progress, % "x" ( p_x-1 ) " y" ( p_y-1 ) " w" ( p_size+2 ) " h" ( p_size+2 ) " background" p_color
BeerCorpse ist offline   Mit Zitat antworten
Ungelesen 31.10.12, 10:02   #7
BeerCorpse
Anfänger
 
Registriert seit: Sep 2010
Beiträge: 14
Bedankt: 2
BeerCorpse ist noch neu hier! | 0 Respekt Punkte
Standard Neue Funktion entdeckt

So, eine weitere Funktion die ich vor einer ganzen weile entdeckt habe.
ich dachte ich schreib sie mal falls jemand danach sucht.
die funktion arbeitet mit opengl und ist daher sehr viel schneller als der blödsinn von oben^^


gui, -caption +AlwaysOnTop +LastFound +ToolWindow
gui, show, x50 y50 w400 h400

;SetPixelColor(x,y,x2,y2,Farbe) kann auch mit vars gearbeitet werden.
SetPixelColor(100,100,200,200,443355)
SetPixelColor(280,250,300,300,339977)

SetPixelColor(XE,YE,XZ,YZ,ColorRef)
{
BatchVar=%A_BatchLines%
SetBatchLines,-1
AA=%XE%
hDC := DllCall("GetDC", UInt, 0)
While,1
{
Avar := DllCall("gdi32.dll\SetPixel","Uint",hDC,"int",XE," int",YE,"int",ColorRef)
XE++
If(XE=XZ)
{
XE=%AA%
YE++
}
if (YE=YZ)
{
Break
}
}
SetBatchLines,%BatchVar%
}

x::
exitapp
BeerCorpse ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:05 Uhr.


Sitemap

().