Fenster maximieren

  • Hallo Leute

    Ich habe diese Woche mein erstes Script geschrieben um Bilder automatisiert zu bearbeiten. Das funktioniert soweit ganz gut. Einige Kleinigkeiten sind mir aber noch unklar.

    zB: Ich möchte das Paint-Fenster maximieren. ich verwende dazu die Funktion:

    WinSetState("[CLASS:Paint]", "", @SW_MAXIMIZE)

    und das funktioniert nicht. Warum?

    Gibt es eigentlich die Möglichkeit, das Script Zeile um Zeile laufen zu lassen. So dass man sieht, welcher Satz gerade ausgeführt wird...?

    und noch was: Wie zeige ich die Funktion hier im Forum als Quellcode an?

    Danke für die erste Hilfe
    Franco

    • Offizieller Beitrag

    Hey,

    Die Klasse von Paint ist nicht Paint sondern "MSPAintApp". Findest du raus mit dem AutoIt Window Tool (das findest du irgendwo im AutoIt ordner unter C:\Programme (x86)\AutoIt".

    Ja, in Scite: Tools -> Trace: Add Trace Lines

    Im Editor gibt es ganz rechts überhalb des Textfensterns so ein AutoIt zeichen. Da rauf klicken. Oder per hand: [autoit ][/autoit ] (ohne leerzeichen am Ende)

    Hast du schonmal in unserem Tutorial vorbei geschaut?
    http://wiki.autoit.de/wiki/index.php/Tutorial
    In der Hilfe gibt es auch ein erste Schritte Tutorial:
    http://translation.autoit.de/onlinehilfe/tu…pad/notepad.htm

    lg,
    Spider

  • Hallo Spider

    Danke für die Antwort. Das mit dem Tutorial schaue ich mir gleich an. Ich habe noch Mühe mit der Schreibweise der Funktionen. Das mit dem maximieren kriege ich nicht gebacken. Ich stehe auf dem Schlauch... ?(
    Wie muss die Funktion dann heissen? so funkts auch nicht:

    [autoit]

    WinSetState("[CLASS:MSPAintApp]", "", @SW_MAXIMIZE)

    [/autoit]


    Zitat

    Ja, in Scite: Tools -> Trace: Add Trace Lines


    Ich habe SciTE-Lite, da gibt es die Funktion nicht...?

    lg und Danke
    Franco

    • Offizieller Beitrag

    Hey,

    Sorry, da hab ich falsch abgeschrieben. Das erste A muss natürlich klein. Siehst du mit dem Window Info Tool aber auch ;) Da schau dir einfach mal den zweiten Link an den ich oben gepostet hab, da wird das Tool erklärt.

    [autoit]

    WinSetState("[CLASS:MSPaintApp]", "", @SW_MAXIMIZE)

    [/autoit]

    Ja, deswegen heißt es ja SciTE Lite, weil da alle Funktionen draußen sind.. Entweder du holst dir die normale Version oder du machst es per Hand mit ConsoleWrite("Zeile "&@ScriptLineNumber&@CRLF) über/unter jedem Befehl.

    Gruß,
    Spider

  • Hallo,

    wenn dir das mit [CLASS:MSPaintApp] zu schwer ist geht auch einfach den Namen des Fensters.
    z.B.

    was auch noch geht ist winactive

    Code
    ; Retrieve the window text of the active window.
        Local $sText = WinGetText("[ACTIVE]")


    bzw winwaitactive. wartet solange bis dein fenster das aktive fenster ist.
    WinWaitActive
    Pauses execution of the script until the requested window is active.

    WinWaitActive ( "title" [, "text" [, timeout = 0]] )

    wenn du Zum fensterhandling noch Fragen hast gerne raus damit.
    Ansonsten kann ich dazu auchmal ein videotutorial machen wenn das gewünscht ist

  • Hallo Spider
    Hallo GegX

    Es hat geklappt. :D
    Das Window Info Tool hab ich gefunden und (so glaube ich zumindest) verstanden.
    Die Funktion WinWaitActive habe ich auch gleich mit eingebaut.

    Die Funktionen zum Fensterhandling sind soweit klar. Hier ist einfach noch ausprobieren angesagt. Ich habe das Script in eine .EXE umgewandelt und auf dem Rechner bei der Arbeit laufen lassen. Da habe ich schnell gemerkt, dass es die Funktion WinWaitActive braucht. Die Kiste lahmt ein bisschen...

    Ich lass das mal so laufen. Besten Dank fürs helfen