Abfrage in AutoIt erstellen für einen Speziellen fall

  • Kann es sein, dass sich die Instanznummer der Controls ändern? Dann müsstest du die Controls über ihre Position und Größe ansprechen


    [autoit]

    Local $TPanel2 = ControlGetText('Handwerker Client', '', "[CLASS:TPanel; X:11; Y:11; W:528; H:20]")

    [/autoit]

    Die Koordinaten musst du dir mit dem Window Info Tool holen.

  • Die Instanznummern ändern sich nicht werde es aber mal mit den Positionsnummern versuchen

  • Weisst du was ichglaube unser Client ist ein Sonderfall wo Autoit einfach an seine grenzen stößt :cursing:

    Mit den Positionsangaben macht er dasselbe wie mit den Instanz angaben

  • Mag sein das du Recht hast hast mir aber sehr geholfen. Schaumal ich denke wenn du den Client selber hättest könnest du es vor ort versuchen. Das wäre einfacher denke ich als rumzu raten oder :?:

  • Das wäre bedeutend einfacher, aber eine Frage habe ich noch: Gibt es auf dem Rechner vllt mehrere fenster mit dem Namen 'Handwerker Client' ? Das würde einiges erklären.
    Autoit würde dann das am weiten liegende 'Handwerker Client'-Fenster nach den Controls durchsuchen, wenn es das falsche Fenster ist, dann kommt natürlich nichts.

  • Doch das gibt es mehrere Fenster Die Werden Als Handwerker Client bezeichenet haben aber in klammern ihre Ident kennung z.B in diesem Fall Erfassung 2150-0000010008575 - Fertig
    die Auftragsnummer könnte man auch aus dem Feld nummer (links oben im Fenster siehst du auch im Screen und den Status Fertig auch aus dem Feld Status bekommen) wobei ich sagen muss das hier wérwähnte Fenster wird zuletzt vom CLIENT GEÖFFNET keine Ahnung ob das ne bedeutung hat.

  • Also es gibt definitiv mehrere Fenster, die mit 'Handwerker Client' beginnen.
    Dann musst du Autoit irgendwie beibringen, welches Fenster es verwenden soll. Dafür ist eigentlich der zweite Parameter bei ControlGetText gedacht. Mit dem Info-Tool erhälst du auch den Visible Text eines Fensters, und den (oder einen Teil davon) gibt man ControlGetText als 2. Parameter ('text') mit. Ich hoffe, dass man die Fenster durch diesen Text unterscheiden kann.

  • Jo muss mal schauen das ich den Visible Text als Text Parameter mit in die Schleife übergebe. Ich melde mich noch He He sorry aber hast glaube mit mir ne Vollzeitbeschäftigung wa :rofl:

  • [autoit]

    Local $TPanel1 = ControlGetText('Handwerker Client - [Erfassung 2150-0000010008575 - Fertig]', '', "[CLASS:TPanel; INSTANCE:1]")
    Local $TPanel2 = ControlGetText('Handwerker Client - [Erfassung 2150-0000010008575 - Fertig]', '', "[CLASS:TPanel; INSTANCE:2]")

    [/autoit][autoit][/autoit][autoit]

    If $TPanel1 < $TPanel2 Then
    MsgBox(64, "OK", "Die Auftragssumme von "& $TPanel1 &" € ist OK!")
    Else
    MsgBox(64, "Warnung", "Auftragssumme OK!")
    EndIf

    [/autoit]

    Ich habe die einträge aus dem Window Info Tool her aus dem Reiter Visible Text klappt aber auch nicht. Ich d´sage ja es liegt definitiv an unserem Client. Ich werde aber nicht aufgeben.