Hallo Aspirin..,
entschuldige bitte mein gnoergel.
Klein Berti hatte nur die Version von SciTe auf den neuesten Stand gebracht.
Nach Installation der autoit-v3.2.2.0-setup.exe
funzelt alles wunderbar!!
Gruss vom Dummi
@Berti
Hallo Aspirin..,
entschuldige bitte mein gnoergel.
Klein Berti hatte nur die Version von SciTe auf den neuesten Stand gebracht.
Nach Installation der autoit-v3.2.2.0-setup.exe
funzelt alles wunderbar!!
Gruss vom Dummi
@Berti
hallo,
habe Deinen Code 1:1 kopiert und bekomme folgende
Meldung beim Compilieren:
Subscript used with non-Array variable.:
MsgBox(0,"", $ret[2])
MsgBox(0,"", $ret^ ERROR
Er erkennt also das Array nicht.
MsgBox(0,"",$ret) gibt mir nur die 1
![]()
Danke @Berti
#include <array.au3>
Global $ret[10]
Global $test = "Sie haben #21,00 oder $100.00 oder 10€ gewonnen"
$ret = StringRegExp($test, "(\d{1,}[\.]\d{0,})|\d{1,}",3)
While 1
sleep(200)
ToolTip($ret[0],200,200)
WEnd
bekommt folgende Compilermeldung:
==> Subscript used with non-Array variable.:
Wieso ?
#include <array.au3>
Global $test = "Sie haben #21,00 oder $100.00 oder 10€ gewonnen"
$ret = StringRegExp($test, "(\d{1,}[\.|,]\d{0,})|\d{1,}", 3)
While 1
ToolTip($ret,200,200)
WEnd
...zeigt nur 1 an. Wieso ?
Danke @Berti
danke an th.meger, :stolz_bin:
sieht gut aus. Werde es gleich mal ausprobieren.
Gruss @Berti
----------------------------------------------------------------------
hat irgendwie nicht gefunzt.
Kannst Du mir mal die Syntax von StringRegExp anzeigen?
Meine Help hat soetwas nicht.
Danke @Berti
hallo,
hier der Beispieltext:
Sie haben $0.37 gewonnen
Gruss @Berti
hallo th.meger, :irre:
... soll mir nur den Zahlwert ausgeben 0.37 .
Format der Zahl: 0.01 bis 9999.99
Textlänge unterschiedlich (dynamisch)
Gruss @Berti
P.S. Hab in der Hilfe leider kein RegExp gefunden, bin schon gespannt.
hallo, ich haette da mal eine Frage: :hm:
Strings vergleicht man ja durch:
IF StringInStr(VariableInDerDerStringEnthaltenIst, "Suchstring") = 1 Then...
mein Problem ist jetzt, daß ich nur den Zahlwert suche.
Bsp: $Variable = "Sie haben $0.37 gewonnen"
Die gesuchte Function soll mir nur den Zahlwert ausgeben (0.37).
Die Länge des Strings und die Zahlen sind dynamisch.
Wie geht das?
Danke
@Berti
jup, :stolz_bin:
Ich suche den Quelltext von Au3Info.exe !?
(AutoIt Active Window Info)
Danke @Berti
hallo, :hammer:
habe einen button in einer fremdanwendung
mit dynamischem text, der sich alle 2 min ändert.
bekannt ist nur die controlID = 4002
gesucht ist der text des buttons
mein versuch ...
local $h = WinGetHandle("") ;aktives Fenster
WinWaitActive($h) ;aktivieren
$var = controlGetText($h,"",4002) ; ???
ToolTip($var)
... scheiterte kläglich. wieso?
:lol:ok, dank euch brennern
@Berti
hallo mega, :stolz_bin:
danke für den Tip mit @error.
hab die fehlermeldung, die sich auf $x = $size[0] bezog,
wie folgt abgefangen:
local $h = WinGetHandle("") ;aktives Fenster
WinWaitActive($h) ;aktivieren
local $x,$y,$size[4]
$size = WinGetPos($h,"")
;...
;bei fehlermeldung nicht ausführen...
IF $size = not @error Then
$x = $size[0]
$y = $size[1]
EndIF
Gruss @Berti
hallo, :hammer:
gibt es bei AutoIT so etwas wie try .. catch and finally
zum Abfangen von Fehlermeldungen?
Danke @Berti
hallo leut, :lol:
danke für die anregungen.
hab mich mal rangesetzt und eine UDF gebastelt,
die nur die weissen pixel beim auslesen beachtet
PixelColorSum(100, 100, 104, 105, 16777215)
gibt bei einer null als ergebnis 344443 aus:
XOOOX =3
OOXOO =4
OOXOO =4
OOXOO =4
OOXOO =4
XOOOX =3
Gruss @Berti
hallo, :weinen:
kann nu jemand sowas programmieren?
ich möchte damit weisse zahlen auslesen,
der hintergrund ist sehr dynamisch.
Danke @Berti
hallo,(Sc3) :hammer:
kann jemand mal fix pixelshecksum so anpassen,
daß z.B. nur weiss beachtet wird?
etwa so:
PixelChecksum(100,100,105,107, 16777215)
Danke @Berti
hallo peethebee (e7-e5) :stolz_bin:
sieht schon nicht schlecht aus.
probier das tool gleich morgen mal aus.
hab mein problem mit einer kombination aus
controlgetpos und pixelgetcolor gelöst.
sieht scheisse aus, aber funzelt.
Danke @Berti
Es gibt mehrere buttons mit gleichem namen.
ich kann aber nur einen S I C H T B A R E N
über seine ControlID ansprechen.
$h = WinGetHandle("")
WinWaitActive($h)
For $i = 2000 To 2009 Step +1
IF ... Then ;wenn die controlId sichtbar, dann...
ControlClick($h,"",$i,"left",1)
EndIF
Next
Noch ein paar inputs:
Style 0x50010004 bei einem sichtbaren button
Style 0x40010004 wenn man ihn nicht sieht
Vielleicht gehts ja über style, irgendwie?
über GUICtrlGetState kann ich nicht gehen, da
ja eine Fremdanwendung und keine eigene GUI.
peethebee, bist du noch da? (e2-e4) :hm:
hallo peethebee, :hammer:
wie kann ich alle controlID's des aktiven Fensters anzeigen,
die gerade versteckt sind ?
Mein Ansatz war ungefähr so...
$h = WinGetHandle("")
WinWaitActive($h)
ControlShow($h, "",2000)
...aber leider falsch, da ja jetzt nur der versteckte Button
mit der ControlID 2000 zu sehen ist.
Kann mir jemand eine ControlGetHidden schreiben
oder gibts sowas schon?
ControlGetHidden($h,"",2000) ;return 1, wenn ControlId 2000 versteckt ist
Danke @Berti
nagut, :keks:
local $h = WinGetHandle("")
WinWaitActive($h)
ControlCommand($h,"","checkBox1","Check","")
funktioniert. Wenn man jetzt statt Check/UnCheck
das command IsChecked benutzt...
... "IsChecked", "" Returns 1 if Button is checked, 0 otherwise
Gruss @Berti