Beiträge von masterRobb

    Also,
    ich komme einfach nicht auf das Problem:

    MsgBox (0,"",$4GewPicsDatei[0][0])
    For $i = 0 To 4
    For $x = 0 To 4
    Select
    Case $4GewPicsDatei[$i][$x] = $4GewRedYellow And $4GewPicsDatei[$i+1][$x+1] = $4GewRedYellow And $4GewPicsDatei[$i+2][$x+2] = $4GewRedYellow And _
    $4GewPicsDatei[$i+3[$x+3] = $4GewRedYellow
    EndSelect
    Next
    Next


    Zur Info: $4GewPicsDatei[][] ist 8x8 groß und es werden nur Buchstaben drin gespeichert. Der Aufruf der MsgBox vor der for-Schleife funktioniert, innerhalb der for-schleife, auch für den Fall [0][0], funktioniert es nicht mehr.
    Das Eigenartige: mit exakt der selben Struktur habe ich kurz davor bereits eine Abfrage des Arrays gemacht und die funktioniert. Hier aber nicht? Wieso? Ideen? Ich verzweifle ;(



    Fehlermeldung: ==> Array variable subscript badly formatted.:
    If $4GewPicsDatei[$i][$x] = $4GewRedYellow And $4GewPicsDatei[$i+1][$x+1] = $4GewRedYellow And $4GewPicsDatei[$i+2][$x+2] = $4GewRedYellow And $4GewPicsDatei[$i+3[$x+3] = $4GewRedYellow Then
    If $4GewPicsDatei[$i][$x] = $4GewRedYellow And $4GewPicsDatei[$i+1][$x+1] = $4GewRedYellow And $4GewPicsDatei[$i+2][$x+2] = $4GewRedYellow And $4GewPicsDatei[$i+^ ERROR

    Hi,


    gibt es in AutoIt eine Funktion mit der man Eigenschaften eines durch GuiCtrlCreatePic() erstellen Bildes abfragen kann?
    Also z.B. welches Bild in diesem Pic hochgeladen ist bzw. dessen Dateipfad oder so was?


    Und noch eine weitere Frage:
    wie kann ich ein solches Bild ändern? oder muss ich es dann noch mal "createn"?
    _______
    Sry, dass ich schon wieder ein Topic öffne - bin gerade etwas verpeilt he he ^^

    danke, aber geht es auch irgendwie den Button "soft" zu machen, also im Prinzip transparent und den Pfeil wegzulassen? :D


    Habe noch eine weitere Frage:
    Gibt es eine Funktion die den Dateipfad des Bildes eines GUICtrlCreatePic()s zurückgibt?
    Oder irgendetwas in diese Richtung? ich finde nichts, bräuchte es aber -> das Programm muss dann abfragen welches Bild in einem GUICtrlCreatePic() drin ist

    ehrlich gesagt keine Ahnung ist schon lange her als ich das genommen habe und ich glaube ich habe es auch nicht selbst geschrieben ^^
    Bei mir haben die DllCalls schon eine Wirkung auf den Button - das werden dann so "Softbuttons" oder so, blöder weise mit nem Pfeil.
    Funktioniert das bei dir nicht? ^^

    Hi
    Folgendes Problem:
    ich habe mit DllCall das Design meines Buttons geändert, kann diesen aber nicht mehr rückgängig machen.
    Also wenn ich den DllCall jetzt auskommentier etc. bringt das nichts.
    Was muss ich machen, damit die Buttons wieder normal aussehen? :)

    $TTTCompStart = GUICtrlCreateButton("Computergegner: Start", 30, 190, 180, 60, 14, -1)
    DllCall("user32.dll", "UINT", "SendMessage", "handle", GUICtrlGetHandle(-1), "UINT", $BCM_SETNOTE, "ptr*", 0, "wstr")
    DllCall("user32.dll", "UINT", "SendMessage", "handle", GUICtrlGetHandle(-1), "UINT", $BCM_SETSHIELD, "ptr*", 0, "BOOL", False)

    Wo kann ich die Constants nachschauen?
    Habe mal in der Hilfe bei mir nachgeschaut von "$BCM-SETNOTE" konnte ich nichts finden :)


    Und danke schon mal für die Bemühungen ^^

    ja, ich werde dein Tutorial auch genau durchgehen ^^
    Nur weiß ich (glaube ich) wie ein DllCall funktioniert - ich kann es auch bei einfachen Funktionen wie Beep und so machen.
    Aber wenn es um die Funktion SendMessage aus der user32.dll geht verstehe ich nicht ganz genau was für Parameter ich übergeben kann um welches Design zu kriegen.
    Und ich finde das auch nicht bei deren Beschreibung.
    In meinem Beispiel wurden ja auch Variablen benutzt, die autoIt scheinbar schon kennt...
    _________________
    Hilft mir da dein Tutorial auch weiter? ^^

    mmm, vlt. hast du recht, eig. brauche ich ein ganzes Tutorial
    -> das "Tutorial", dass ich hatte war eher etwas... mager XD


    Und danke für das Tut von bug-fix :D Ich werde es mal durchgehen und euch danach vermutlich mit Fragen quälen :3


    €dit: habe es gerade nur mal kurz überflogen und das ist eigentlich nicht so die Problematik - glaube ich :D
    Ich habe eher ein Problem herauszufinden WELCHE Parameter ich übergeben kann, weil das scheinen irgendwelche festgelegten Konstanten zu sein.
    Na ja, ich werde es genauer durchgehen, es wäre dennoch vlt. hilfreich, wenn mir jemand schon mal ein Beispiel erstellen könnte
    für DllCalls die das Design bestimmter GUI-Instanzen verändern :)

    Hey,


    ich bin vor nicht all zu langer Zeit vor die Funktion "DllCall" getreten.
    Und habe mir aus einem anderen Quellcode auch bisschen was abschauen können und ein kleines Tutorial habe ich auch hinter mir.
    Das Tutorial war allerdings nur geringfügig hilfreich ^^


    $button = GUICtrlCreateButton("button", 30, 190, 180, 60, 14, -1)
    DllCall("user32.dll", "UINT", "SendMessage", "handle", GUICtrlGetHandle(-1), "UINT", $BCM_SETNOTE, "ptr*", 0, "wstr")
    DllCall("user32.dll", "UINT", "SendMessage", "handle", GUICtrlGetHandle(-1), "UINT", $BCM_SETSHIELD, "ptr*", 0, "BOOL", False)


    Da ich allerdings SEHR GERNE mit DllCall arbeiten würde, speziell für ein besseres GUI-Design würde ich gerne eure Hilfe in Anspruch nehmen :thumbup:
    Also folgende Fragen:
    1. wie arbeite ich mit DllCall - GANZ GROBE Erklärung (damit die, die das Thema googlen was finden)
    2. wie finde ich in der WinAPI die Funktionen, die mich interessieren
    UND: wie kann ich verstehen was die Funktionen so richtig machen, bzw. die Parameter machen. (in msdn.microsoft.com konnte ich nicht richtig herauslesen was welcher Parameter zu bedeuten hat | bzw. was man da
    übergeben kann um ein entsprechendes Design zu setzen)
    3. wäre jemand so nett mit DllCall einige Beispiele bezüglich der Design-Änderung einer GUI zu erstellen (z.B. Form, Button, Label etc.)
    [wenn möglich natürlich mit Erklärungen]
    ______
    Ansonsten alle Informationen, die mich diesbezüglich interessieren könnten, sind selbstverständlich auch sehr erwünscht :D
    ______
    Danke schon mal an alle die sich das Thema durchgelesen haben und an die, die mir versuchen zu helfen :)


    €dit: "$BCM_SETNOTE", "$BCM_SETSHIELD" (siehe Beispiel) - eig. brauche ich viel mehr dafür eine Erklärung :D

    Der Vollständigkeits halber hier noch meine Lösung:


    Viel Quellcode für wenig, ich weiß.
    Dennoch möchte ich es mal erklären:
    Das Script wandelt einen File in Hex-Code um und speichert diesen dann in einem Textdokument auf dem Desktop.
    Das ganze wird bereits in einer AutoIt-kompatiblen Funktion ausgegeben, die man dann in beliebe Scripts einfügen kann.
    [man kann ein File in Binärcode auslesen - Binärcode in Hexcode umrechnen lassen]
    [der Rest ist nur noch Schnick-Schnack]


    Ruft man die Funktion auf, befindet sich das Bild in einem temporären Ordner.
    Den genauen Dateipfad kann man unten in der Funktion noch mal rauslesen (@TempDir &"...")
    Auf diesen Dateipfad kann man nun ganz normal zugreifen und somit mit GuiCtrlCreatePic() das Bild in die GUI laden.
    ________________


    Wie sinnvoll das ganze ist? - ich mag Pinguine ;P

    WOW! :D
    Meinen höchsten Respekt für diese ausgezeichnete und ausführliche Erklärung! Danke! :D
    Dürfte mir helfen, ich probiere dann mal selbst ein Bild Codieren zu lassen und dann wieder anzeigen zu lassen ^^


    Also wenn ich dann mein Bild in Binärcode codiert habe und dieser im Skript steht, muss ich diesen dann sozusagen wieder als "file" erstellen und kann dann in der GUI auf diesen file zugreifen, richtig? :D

    danke für das Verständnis :D
    ich glaube allerdings, dass ihr schon enorm viel Geduld mit mir haben müsstet, damit ich das verstehen könnte - überschreitet meine Fähigkeiten wohl doch bei Weitem :D


    Aber wenn ihr es doch versuchen wollt:
    Beim FileToBase64:
    mmm, wie fangen wir am besten an - möglichst kleine Schritte.
    Also: Ich kann das Script ausführen und eine z.B. .png Datei Codieren lassen.
    Nun kriege ich eine Funktion und die Codierung - wozu dient die Funktion die ich kriege?
    Und was für eine "Codierung" habe ich dann?
    Was muss ich dann Schritt für Schritt machen um mit dieser Codierung etwas anfangen zu können? Im Idealfall in eine GUI diese als Picture zeigen zu lassen.



    Die andere Lösungsmöglichkeit, die mir Krabat netter weise geschickt hat funktioniert bei mir irgendwie nicht. Also die Funktionen, die gegeben werden funktionieren bei mir nicht - da gibt es dann unzählige Fehlermeldungen ^^
    _______________________
    Für die, die sich damit auskennen - ist Krabats Lösungsvorschlag für mich besser geeignet?


    ______________________
    Und nur so nebenbei: Kennt einer von euch ein gutes Tutorial für DllCalls, welches evtl. auch speziell Designs für GUIObjekte(heißt das so?) - also Buttons, Inputboxen etc. beinhaltet? :D

    @Krabat
    leider funktioniert gar nichts von dem bei mir ^^
    Alleine schon die Scripts die da offengelegt werden scheinen Fehlerhaft zu sein :)
    Und ich bezweifle auch stark, dass es das ist was ich suche :)
    Aber danke für deine Mühe ^^


    Und danke für jeden, der versucht hat zu helfen :)
    Nun gut, ich möchte mal lieber aufhören euch zu belästigen und schließe mal lieber den Thread - sollte jemand dennoch noch eine Lösung haben => schreibt mich persönlich an :D