1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. $var

Beiträge von $var

  • Kompletter Anfänger brauch Hilfe

    • $var
    • 17. November 2011 um 18:45
    [autoit]

    AdlibRegister ("_Main", 540)

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

    _Main ()

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

    While True
    Sleep (100)
    WEnd

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

    Func _Main ()
    MouseClick("left", 652, 234)
    MouseClick("left", 1032, 360)
    MouseClick("left", 652, 234)
    MouseClick("left", 1014, 637)
    MouseClick("left", 561, 536)
    MouseClick("left", 652, 234)
    EndFunc

    [/autoit]
  • Fenster von _ArrayDisplay() schliessen

    • $var
    • 10. November 2011 um 07:22
    [autoit]

    WinClose ("Array: ListView Display")

    [/autoit]

    Wobei es eigentlich gar nicht funktioniert, da dieser Befehl erst ausgeführt werden kann, nachdem das Fenster bereits geschlossen wurde.

    Wenn du willst, dass es sich durch einen "Timeout" schließt (wie zum Beispiel eine MsgBox), dann müsstest du es so machen:

    [autoit]

    #include <Array.au3>
    $aArray = StringSplit ("das|ist|ein|array", "|", 1) ; Random Array erstellt
    AdlibRegister ("_Close", 3000) ; Schließt das Fenster in drei Sekunden
    _ArrayDisplay ($aArray)
    Func _Close ()
    WinClose ("Array: ListView Display") ; Alternativ auch WinClose (WinGetTitle("Array"))
    AdlibUnRegister ("_Close")
    EndFunc

    [/autoit]
  • vokabeltrainer

    • $var
    • 11. Oktober 2011 um 22:55

    Am Anfang erstellst du ein zweidimensionales Array.
    In $aVokabel[n][2] werden die deutschen Wörter gespeichert. In $aVokabel[n][1] die englischen und in $aVokabel[n][0] wird das gespeichert, was der Benutzer eingibt.
    Dann startest du eine For-Schleife (wie Script-Bär bereits sagte).
    Es wird die Variable $i erstellt und ihr Wert wird auf 0 gesetzt. Somit kann das Array gleich von ganz 'unten' abgefragt werden.
    Mit Ubound ($aVokabel) wird die Gesamtgröße des Arrays bestimmt. Das ist nötig, damit das Script auch weiß, wann es die Schleife beenden soll.

    Die Eingabe erfolgt - aber das kennst du ja. :P
    Dann wird mit der If-Abfrage geprüft, ob die Eingabe stimmt. Falls ja, dann wird $iRichtig um 1 erhöht.
    Man verwendet hier auch das "Else", das die Abfrage noch mal einfacher macht und das "<>" ersetzt.
    Es heißt so viel wie "ansonsten", also wenn es eben nicht stimmt...

    Lies dir am besten die Hilfe zu den Funktionen in der Hilfe durch (Cursor auf die Funktion setzen und dann F1 in SciTE).

    Ich glaube, das wäre eigentlich die einfachste und kompakteste Möglichkeit.

  • vokabeltrainer

    • $var
    • 11. Oktober 2011 um 22:31
    code
    [autoit]

    Global $aVokabel[3][3] ;gesamtanzahl der vokabeln
    $aVokabel[0][1] = "Hello"
    $aVokabel[1][1] = "Car"
    $aVokabel[2][1] = "Sandwich"
    ; ~~ bis $aVokabel[n][1]

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

    ; ~~ Die Wörter auf Deutsch
    $aVokabel[0][2] = "Hallo"
    $aVokabel[1][2] = "Auto"
    $aVokabel[2][2] = "Sandwich"
    ; ~~ ebenfalls bis $aVokabel[n][2]

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

    $iRichtig = 0

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

    For $i = 0 To Ubound ($aVokabel) - 1 Step 1
    $aVokabel[$i][0] = InputBox ($aVokabel[$i][2], "Wie heißt '"& $aVokabel[$i][2] &"' auf Englisch?")
    If $aVokabel[$i][0] = $aVokabel[$i][1] Then
    MsgBox (0, "Richtig!", "Gut gemacht!")
    $iRichtig = $iRichtig + 1
    Else
    MsgBox (0, "Falsch!", "Das war leider falsch.")
    EndIf
    Next

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

    MsgBox (0, "Anzahl richtig", $iRichtig &" von "& Ubound ($aVokabel) &" richtig!")

    [/autoit]

    Wenn du neue Wörter hinzufügst, musst du die erste Zahl bei $aVokabel[3][3] erhöhen.
    Also bei 20 Vokabeln wäre es dann $aVokabel[20][3]
    In den oberen Block (mit [1] hinten) schreibst du die englischen Wörter. In den anderen Block kommen die Deutschen.

    Ich hab noch just for fun einen Counter reingemacht, der am Ende zeigt, wie viele richtig waren. :P

    Viel Spaß.

  • Problem mit StringReplace

    • $var
    • 8. Oktober 2011 um 17:52
    [autoit]

    #include <String.au3>
    $newName = StringReplace($lvitemName, _HexToString ("F3"), "-", 0, 2)

    [/autoit]
  • Textstellen im Edit farblich hervorheben

    • $var
    • 5. Oktober 2011 um 19:04

    gem
    Danke, es scheint eine ganz schön ausgewachsene Funktion zu sein.
    Doch irgendwie flackert der Cursor bei mir, wenn er sich im Editfeld befindet. Normal? Kann man das irgendwie beheben?

    name22
    ...Erst mal alles Gute... :D

    Ich habe ein Wenig (oder auch ein Wenig mehr) HTML-Wissen. Das wäre also eigentlich kein Problem.
    Doch wie genau soll das funktionieren? Was wäre die Grundlage?

    MfG

  • Textstellen im Edit farblich hervorheben

    • $var
    • 5. Oktober 2011 um 18:17

    Guten Abend. ^^
    Ich habe mal wieder eine Frage.

    Wie kann man im Edit bestimmte Textstellen farblich hervorheben? (Oder dick/kursiv/unterstrichen.)
    So was sollte 'live' funktionieren, wie zum Beispiel im SciTE-Editor.
    Man tippt etwas ein und wenn es in der "Datenbank" vorhanden ist, dann sollte es mit bestimmter Farbe gefärbt werden.
    Wenn ein Zeichen daraus gelöscht wird, dann wieder schwarz.

    Vielleicht auch, wie man die Textstellen "nach rechts schieben" kann... Eben auch wie im SciTE-Editor. Ich kenne die richtige Bezeichnung dafür leider nicht. ^^
    Am Ende soll es auch ein Editor werden... Bloß eben für andere Zwecke.

    Ich verlange jetzt natürlich keine fertigen Codes, aber ein paar Ideen wären sehr nett. :)

    MfG

  • Platzhalter?

    • $var
    • 2. Oktober 2011 um 13:54

    Ahah, ich Idiot. Natürlich, klar... Danke, ich versuchs mal. :D

    €: Klappt wunderbar. Danke. ^^

  • Platzhalter?

    • $var
    • 2. Oktober 2011 um 12:06

    Morgen blubbstar,

    ich habe StringInStr bereits vorher mal ausprobiert, doch es verwirrte mich auf Dauer nur, also habe ich es gelassen.
    Jetzt habe ich es noch mal probiert und endlich verstanden... :P
    Das Problem sieht jetzt so aus: Vor dem jeweiligen Namen in $aTrack ist immer ein Zeilenumbruch und deshalb können die Dateien nicht richtig verglichen werden (weil im echten Dateinamen eben kein Zeilenumbruch ist bzw. sein kann).
    Ich habe bereits folgendes ausprobiert um die Zeilenumbrüche zu entfernen, doch es klappt leider nicht:

    [autoit]

    For $i = 1 To 50 Step 1
    StringReplace ($aTrack[$i], @CRLF, "") ; auch @CR und @LF einzeln
    Next

    [/autoit]


    So sieht ein einzelnes Element aus, wenn ich es mit _ArrayDisplay anzeigen lasse und dann kopiere:

    Code
    [1]|
    Eminem - Love Me


    Was tun?

  • Platzhalter?

    • $var
    • 2. Oktober 2011 um 11:13

    Guten Tag,
    ich hätte mal eine Frage.
    Es kennt doch sicherlich jeder die gewöhnlichen Platzhalter ('*') die man zum Beispiel beim Durchsuchen von Ordnern nach Dateien verwendet ('*.mp3' für alle mp3-Dateien).
    Nun bräuchte ich so was in AutoIt. Leider ist es ziemlich schwer nach '*' zu googlen und deshalb bin ich leider gezwungen, den Thread zu erstellen.

    Ich versuche ein Programm zu schreiben, das den Quellcode einer Webseite ausliest, dort die Dateinamen von Musiktiteln entnimmt
    und sie dann mit den Dateien in einem meiner Ordner vergleicht. Wenn die Dateien im Ordner gefunden werden, sollen sie in einen anderen Ordner kopiert
    und in eine *.txt geschrieben werden.
    Bereits beim Vergleichen komme ich nicht weiter, da die Musiktitel die ich aus der Webseite auslese, nicht exakt übereinstimmen.
    Nur die erste Hälfte stimmt überein.

    Beispiel:

    Zitat von Webseite

    Eminem - Love Me

    Zitat von Ordner

    Eminem - Love Me [HD]

    Die Titel fangen also gleich an, bloß im Ordner ist normalerweise noch ein 'Zusatz' (manchmal das '[HD]', manchmal das Album o.ä.).

    Scriptausschnitt:

    [autoit]

    For $i = 1 To 50 Step 1 ; es sind immer 50 Titel auf einer Seite
    If FileExists ($sFolder & $aTrack[$i] & "*") = 1 Then ; $aTrack[n] enthält immer den kurzen Musiktitel von der Webseite
    FileCopy ($sFolder & $aTrack[$i] & "*", $sNewFolder & $aTrack[$i])
    FileWrite (@DesktopDir & "\titel.txt", $aTrack[$i])
    EndIf
    Next

    [/autoit]

    Das '*' scheint irgendwie nicht so zu funktionieren, wie ich es mir erhofft habe...

    Hoffentlich versteht jemand, was das Problem ist und kann mir weiterhelfen.

    PS: Ich wäre natürlich auch bereit, eine andere Art des 'Vergleichens' auszuprobieren... Solange es eben klappt. :D

    MfG

  • Soundplay mit Usermusik

    • $var
    • 29. September 2011 um 20:26
    [autoit]

    SoundSetWaveVolume(100)
    $open=FileOpenDialog("Eigene Musik","", "MP3 Musikdateien(*.mp3)")
    SoundPlay($open, 1)

    [/autoit]
  • Markierten Text 'speichern'

    • $var
    • 24. September 2011 um 19:12

    Guten Abend,
    ich frage mich ob es möglich ist, markierten Text zu speichern.
    So ähnlich wie

    [autoit]

    ClipGet()

    [/autoit]

    in Kombination mit

    [autoit]

    ClipPut()

    [/autoit]

    bloß eben "professionell", auf einem direkten Weg.

    Gibt es mittlerweile etwas derartiges?

  • imagesearch fehlermeldung

    • $var
    • 23. September 2011 um 20:16

    Steck die DLL nicht in System32 rein, sondern in SysWOW64.

  • Fenster in der Taskleiste verstecken

    • $var
    • 20. September 2011 um 21:49

    Noch mal, guten Abend.

    Mich würde mal interessieren, ob/wie man ein bestimmtes Fenster in der Taskleiste ausblenden kann.
    So, wie wenn man

    [autoit]

    WinSetState ("title", "text", @SW_HIDE)

    [/autoit]

    benutzen würde, nur eben, dass nicht das ganze Fenster versteckt wird, sondern das 'Ding' in der Taskleiste.

    Gibt es da eine Möglichkeit, so was zu machen?

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Außerdem würde mich noch interessieren, ob man ein Fenster, in das Tray-Menu reinschieben kann.
    Beispiele dafür wären u.a. MSN, Skype und BitComet.

    MfG

  • StringSplit & Slash

    • $var
    • 17. September 2011 um 16:37

    Oh, wie konnte ich bloß das Flag übersehen?!
    Vielen Dank, autoBert!

    ~erledigt~

  • StringSplit & Slash

    • $var
    • 17. September 2011 um 15:56

    Hallo,
    ich hab ein ganz kleines Problem mit StringSplit.
    Ich würde den String gerne an allen "/e/" splitten.
    Das Problem ist aber, dass es auch bei allen "e" geteilt wird... Und leider auch irgendwie 'doppelt' oder 'dreifach'... Keine Ahnung.
    Was muss ich machen, damit es richtig funktioniert? :D
    Ist doch eigentlich etwas ganz banales...

    [autoit]

    #Include <Array.au3>

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

    $sInput = InputBox ("", "", "Das/e/ist ein/e/Test.")
    $aSplit = StringSplit ($sInput, "/e/")
    _ArrayDisplay ($aSplit)

    [/autoit]

    Folgendes bekomme ich da raus:

    [autoit]

    $aSplit[0] = 9
    $aSplit[1] = "Das"
    $aSplit[2] = ""
    $aSplit[3] = ""
    $aSplit[4] = "ist"
    $aSplit[5] = "in"
    $aSplit[6] = ""
    $aSplit[7] = ""
    $aSplit[8] = "T"
    $aSplit[9] = "st."

    [/autoit]


    Hoffentlich kann mir hier jemand schnell weiterhelfen. :D

    MfG

  • ControlClick funzt bei Adobe Reader X Installation nicht

    • $var
    • 16. September 2011 um 18:14

    Solche Programme solltest du Grundsätzlich als Administrator ausführen.

  • ControlClick funzt bei Adobe Reader X Installation nicht

    • $var
    • 16. September 2011 um 16:08

    Der Punkt "Position" zeigt die Koordinaten relativ zur linken oberen Ecke an... Glaube ich.

    [autoit]

    MouseClick ("left", $aPos[0] + 300, $aPos[1] + 324, 1, 0)

    [/autoit]

    So müsste es sein... Glaube ich. :P
    Probier es einfach mal aus... Wirst schon sehen, wo er klickt.

    MfG

  • ControlClick funzt bei Adobe Reader X Installation nicht

    • $var
    • 16. September 2011 um 14:55
    [autoit]

    $aPos = WinGetPos ("Adobe Reader X (10.1.1) - Assistent")

    [/autoit]
    Zitat von Return Value

    Success: Returns a 4-element array containing the following information:
    $array[0] = X position
    $array[1] = Y position
    $array[2] = Width
    $array[3] = Height

    Davon brauchst du $aPos[0] (X-Koordinaten) und $aPos[1] (Y-Koordinaten).
    Du hast also die Koordinaten von der linken oberen Ecke des Fensters.
    Nun musst du nur noch so viel Pixel zu X und Y addieren, das du auf den Button kommst...
    Beispiel:
    [Blockierte Grafik: http://img690.imageshack.us/img690/6144/beispielmouseclick.png]
    Um hier den Button anzuklicken, müsste der Code nun so aussehen:

    [autoit]

    $aPos = WinGetPos ("Adobe Reader")
    MouseClick ("left", $aPos[0] + 289, $aPos[1] + 145, 1, 0)

    [/autoit]

    Verstehst du...?
    Du bekommst die Position von der Ecke und musst dich dann nach rechts-unten arbeiten. :P

    €: Den Titel hab ich mal ein Bisschen gekürzt...

    MfG

  • ControlClick funzt bei Adobe Reader X Installation nicht

    • $var
    • 16. September 2011 um 13:01
    [autoit]

    $aPosition = WinGetPos ("Adobe Reader X (10.1.1) - Assistent") ; Gibt ein Array mit X- und Y-Koordinaten der linken oberen Ecke des Fensters zurück.
    ;MouseClick ("left", $aPosition[0], $aPosition[1], 1, 0) Hier musst du zu den Koordinaten noch Relativen addieren.

    [/autoit]

    Das würde eigentlich immer klappen, außer, wenn sich der Button nicht mehr im Bild befindet...
    So was ist aber extrem unwahrscheinlich, wenn der User nicht selbst eingreift und das Fenster verschiebt.
    Zusätzlich kannst du noch

    [autoit]

    WinMove

    [/autoit]

    verwenden, um das ganz abzusichern... ;)

    MfG

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™