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. Tweaky

Beiträge von Tweaky

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 25. August 2008 um 01:12

    ne soviele G-Tasten brauche ich nicht, frage mich nur, ob die notwendig ist, oder obs eine billigere tut.

    Habe da an Cherry Expert gedacht.
    Hat die einer?

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 25. August 2008 um 00:58

    @Gta
    hast du die G11 schon mal in der Hand gehabt?

  • Mousedaten

    • Tweaky
    • 25. August 2008 um 00:53

    ... und ich habs so

    Spoiler anzeigen
    [autoit]

    Dim $pos_alt[2]

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

    While 1
    $pos = MouseGetPos()
    If $pos[0] <> $pos_alt[0] Or $pos[1] <> $pos_alt[1] Then
    Sleep(1000) ;Zeit die der Cursor ruhig stehen muss, damit in die Datei geschrieben wird
    $pos_warten = MouseGetPos()
    If $pos[0] = $pos_warten[0] And $pos[1] = $pos_warten[1] Then
    FileWrite("mousdaten.txt", $pos[0] & @CRLF & $pos[1] & @CRLF & @CRLF)
    ConsoleWrite($pos[0] & " | " & $pos[1] & @CRLF)
    EndIf
    EndIf
    Sleep(10)
    $pos_alt = $pos
    WEnd

    [/autoit]
  • Drag&Drop - Text in einem Edit an Mauszeigerposition einfügen

    • Tweaky
    • 24. August 2008 um 13:55

    Hi,
    hab mich mal wieder daran probiert - aber leider ohne Erfolg.
    Dachte man könnte die Mauspos erfragen und dann dort einen Klick setzen.
    Doch leider verschwindet der alte Text in dem sofort, wenn man die Maus losläßt ?(

  • Scite Funktionsbeschreibung (au3.api) übersetzen

    • Tweaky
    • 24. August 2008 um 00:25

    Hi,
    wie mir aufgefallen ist, erscheint wenn ich eine Funktion in Scite eingebe deren Beschreibung leider nur auf englisch.
    Dies kann man ändern.
    Die Beschreibungen stehen in der "au3.api" im Ordner "C:\Programme\AutoIt3\SciTE\api"
    Originaldatei siehe Anhang (leider zu groß zum einbinden)


    Da wird ja zumindest die meisten Funktion übersetzt haben, ist dies eine gute Grundlage dafür auch dies automatisch übersetzen zu lassen.

    Jedoch brauchen wir dazu ein Script.
    Dies habe ich mal geschrieben.

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <File.au3>
    #include <Math.au3>
    #include <String.au3>

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

    ;Dieses Script dient zum automatischen erstellen der deutschen au3.api Datei für Scite (C:\Programme\AutoIt3\SciTE\api)
    ;Als Quelle dienen die txt-Dateien mit den Funktionen.
    ;Vor dem starten muß die Varible $pfad_gross auf den eigenen Pfad angepasst werden

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

    ;Ersteller: Tweaky
    ;Datum: 17.03.2009
    ;Version: 3.6

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

    ;getestet mit
    ;Scite: vom 20.12.2008
    ;AutoIt: 3.3.0.0
    ;deutsche Hilfe: 3.3.0.0

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

    Dim $einlesen_array, $datei_au3_api_array, $array_welches
    Dim $pruef_array_ori, $pruef_array_uebersetzt
    Dim $nur_Funktion
    Dim $eintragen
    Dim $array_alles_da_api

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

    Opt("GUICloseOnESC", 1) ;1=ESC beendet, 0=ESC schließt nicht

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

    ; -------------------------------------------- Pfade Tweaky --------------------------------------------
    ;Pfade zu den Funktionen (Core und UDF)
    ;~ $pfad_gross = "D:\_AutoIt Hilfe\autoit-docs-v3.2.10.0-src\docs\autoit\english\txt2htm\"
    ;~ $pfad1 = $pfad_gross & "txtFunctions\"
    ;~ $pfad2 = $pfad_gross & "txtlibFunctions\"

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

    ;~ ;Pfade zu der originalen und neuen au3.api Datei
    ;~ $pfad_datei_au3_api = "C:\Programme\AutoIt3\SciTE\api\au3.api"
    ;~ $zieldatei = @ScriptDir & "\" & "übersetzt.au3.api"
    ; -------------------------------------------------------------------------------------------------------

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

    ; -------------------------------------------- Pfade peethebee-------------------------------------------
    ;Pfade zu den Funktionen (Core und UDF)
    $pfad_gross = @ScriptDir & "\txt2htm\"
    $pfad1 = $pfad_gross & "txtFunctions\"
    $pfad2 = $pfad_gross & "txtlibFunctions\"

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

    ;Pfade zu der originalen und neuen au3.api Datei
    $pfad_datei_au3_api = @ScriptDir & "\base_au3.api"
    $zieldatei = @ScriptDir & "\au3.api"
    ; -------------------------------------------------------------------------------------------------------

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

    SplashTextOn("Bitte warten", "Die deutsche au3.api wird erstellt", 300, 50, -1, 200)

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

    ;originale au3.api Datei einlesen und kürzen (für die Sachen ohne Beschreibung)
    _au3_api()

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

    ;Funktionen aus den beiden Ordnern in ein Array schreiben und sortieren
    $dateien_array1 = _FileListToArray($pfad1, "*.txt", 1)
    $dateien_array2 = _FileListToArray($pfad2, "*.txt", 1)
    _ArraySort($dateien_array1, 0, 1)
    _ArraySort($dateien_array2, 0, 1)

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

    ;Funktion und Beschreibung aus den txts auslesen und in ein Array schreiben
    _einlesen($pfad1, $dateien_array1)
    $core_array = $array_welches
    _einlesen($pfad2, $dateien_array2)
    $udf_array = $array_welches

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

    ;neue au3.api Datei löschen und erstellen
    FileDelete($zieldatei)
    $file = FileOpen($zieldatei, 1)
    If $file = -1 Then
    MsgBox(0, "Fehler", "Die Datei konnte nicht geöffnet werden.")
    Exit
    EndIf

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

    ;erstelltes Array in die au3.api Datei schreiben
    _FileWriteFromArray($file, $datei_au3_api_array, 1, 0)
    _FileWriteFromArray($file, $core_array, 1, 0)
    _FileWriteFromArray($file, $udf_array, 1, 0)
    FileClose($file)

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

    ;die originale und neue au3-api Datei wieder in ein Array schreiben (damit die fehlenden Funktionen zur neuen Version auch enthalten sind)
    _FileReadToArray($pfad_datei_au3_api, $pruef_array_ori)
    _FileReadToArray($zieldatei, $pruef_array_uebersetzt)

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

    ;die fehlenden Funktionen zur neuen Version dazuschreiben (aus der originalen au3.api)
    _ueberpruefen()

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

    ;korrigiert den Syntax (den der deutschen Hilfe verwenden)
    _syntax_korrigieren()

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

    ;Kontrolle ob alle Funktionen auch in der au3.api enthalten sind)
    _FileReadToArray($zieldatei, $array_alles_da_api)
    _kontrolle($dateien_array1)
    _kontrolle($dateien_array2)

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

    SplashOff()

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

    ;********************************************************************************************
    ; originale au3.api Datei einlesen und kürzen (für die Sachen ohne Beschreibung) *
    ;********************************************************************************************

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

    Func _au3_api()
    _FileReadToArray($pfad_datei_au3_api, $datei_au3_api_array)
    For $i = 1 To UBound($datei_au3_api_array) - 1
    If StringInStr($datei_au3_api_array[$i], "(") Then
    ReDim $datei_au3_api_array[$i]
    ExitLoop
    EndIf
    Next
    EndFunc ;==>_au3_api

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

    ;****************************************************************************************
    ; Funktion und Beschreibung aus den txts auslesen und in ein Array schreiben *
    ;****************************************************************************************

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

    Func _einlesen($pfad, $dateien_array)
    Dim $array_welches[10000]
    Dim $array_opt[1]
    Dim $beschreibung
    $opt_start = 0
    $tcp_start_start = 0
    $tcp_stopp_start = 0
    $t = 0
    For $i = 1 To UBound($dateien_array) - 1
    $ab_hier = 0
    If Not StringInStr($dateien_array[$i], '$tag') And Not StringInStr($dateien_array[$i], 'ChangeLog') Then
    $datei_komplett = $pfad & $dateien_array[$i]
    _FileReadToArray($datei_komplett, $einlesen_array)
    $include = ""

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

    If $dateien_array[$i] = "ObjName.txt" Then $opt_start = $i + 1 ;Sonderfunktion Opt >>> ObjName.txt verwendet, da Opt nach dieser steht, evtl. anpassen, falls eine andere Funktion dazwischen kommt
    If $dateien_array[$i] = "UDPSend.txt" Then $tcp_stopp_start = $i + 1 ;Sonderfunktion UDPShutdown und UDPStartup >>> UDPSend.txt verwendet, da TCPShutdown nach dieser steht, evtl. anpassen, falls eine andere Funktion dazwischen kommt

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

    For $z = 1 To UBound($einlesen_array) - 1

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

    If StringInStr($einlesen_array[$z], '###Syntax###') Then ;Grundinfos für alle Funktionen (Funktion, Parameter, includes)
    For $z = $z + 1 To UBound($einlesen_array) - 1
    If StringInStr($einlesen_array[$z], '#Include') Then ;zu includende Datei ermitteln
    $include = $einlesen_array[$z]
    ElseIf Not StringInStr($einlesen_array[$z], '#Include') Then ;Funktionsname
    $funktion = $einlesen_array[$z]
    _zeichen_ersetzen($funktion)
    $funktion_tmp = $funktion ;für Sonderfunktionen

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

    If $dateien_array[$i] = "ObjEvent.txt" Then ;Sonderfunktion ObjEvent (2 Funktionen in einer txt-Datei)
    $ergebnis = $funktion & " " & $beschreibung
    $t += 1
    $array_welches[$t] = $ergebnis
    $funktion = $einlesen_array[$z + 1]
    _zeichen_ersetzen($funktion)
    $ergebnis = $funktion & " " & $beschreibung
    $t += 1
    $array_welches[$t] = $ergebnis
    EndIf

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

    If $dateien_array[$i] = "TCPShutdown.txt" Then ;Sonderfunktion UDPShutdown (TCPShutdown und UDPShutdown stehen beide in einer txt-Datei)
    $funktion_udp = $einlesen_array[$z + 1]
    _zeichen_ersetzen($funktion_udp)
    $ergebnis_tcp_stopp = $funktion_udp & " " & $beschreibung
    EndIf

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

    If $dateien_array[$i] = "TCPStartup.txt" Then ;Sonderfunktion UDPStartup (TCPStartup und UDPStartup stehen beide in einer txt-Datei)
    $funktion_udp = $einlesen_array[$z + 1]
    _zeichen_ersetzen($funktion_udp)
    $ergebnis_tcp_start = $funktion_udp & " " & $beschreibung
    EndIf

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

    ExitLoop
    EndIf
    Next
    ElseIf StringInStr($einlesen_array[$z], '###Description###') Then ;Grundinfos für alle Funktionen (Beschreibung)
    $beschreibung = $einlesen_array[$z + 1]
    _zeichen_ersetzen($beschreibung)
    EndIf

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

    If $dateien_array[$i] = "AutoItSetOption.txt" Then ;Sonderfunktion AutoItSetOption
    If StringInStr($einlesen_array[$z], '<a name="') Then
    $teilfunktion_werte = ""

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

    ;Beschreibung für Funktion ermitteln
    $teilfunktion_zwischen = _StringBetween($einlesen_array[$z], '<a name="', '"></a>')
    $teilfunktion = $teilfunktion_zwischen[0]
    _zeichen_ersetzen($teilfunktion)
    $teilfunktion_split = StringSplit($einlesen_array[$z], '></a>', 1)
    $teilfunktion_beschr = $teilfunktion_split[2]
    _zeichen_ersetzen($teilfunktion_beschr)

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

    ;Werte für Funktion ermitteln
    For $z = $z + 1 To UBound($einlesen_array) - 1
    If StringLeft($einlesen_array[$z], 1) = " " Then
    $teilfunktion_werte = $teilfunktion_werte & $einlesen_array[$z]
    $teilfunktion_werte = StringReplace($teilfunktion_werte, " ", "") ;Tab entfernen
    Else
    ExitLoop
    EndIf
    Next

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

    ;in Array schreiben
    $funktion = StringReplace($funktion_tmp, '"option"', '"' & $teilfunktion & '"')
    $beschreibung = $teilfunktion_beschr & $teilfunktion_werte
    $ergebnis = $funktion & " " & $beschreibung
    $t += 1
    $array_welches[$t] = $ergebnis

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

    _ArrayAdd($array_opt, $ergebnis)
    ;~ _ArrayDisplay($array_opt)
    EndIf
    EndIf

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

    If $dateien_array[$i] = "Controlcommand.txt" Or $dateien_array[$i] = "Controllistview.txt" Or $dateien_array[$i] = "Controltreeview.txt" Or $dateien_array[$i] = "_IEAction.txt" Then ;Sonderfunktionen Controlcommand, Controllistview, Controltreeview
    If (StringInStr($einlesen_array[$z], '@@ControlCommandTable@@') Or $ab_hier = 1 Or StringInStr($einlesen_array[$z], "@@ParamTable@@")) And Not StringInStr($einlesen_array[$z], '<b>') Then
    $ab_hier = 1
    $teilfunktion_werte = ""

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

    If StringLeft($einlesen_array[$z], 1) = '"' Then
    ;Beschreibung für Funktion ermitteln
    $teilfunktion = $einlesen_array[$z]
    _zeichen_ersetzen($teilfunktion)
    $teilfunktion_beschr = StringReplace($einlesen_array[$z + 1], " ", "") ;zusätzlich Tab entfernen
    _zeichen_ersetzen($teilfunktion_beschr)

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

    ;in Array schreiben
    If $dateien_array[$i] = "Controlcommand.txt" Then ;Controlcommand
    $funktion = StringReplace($funktion_tmp, '"command" [, "option"]', $teilfunktion)
    ElseIf $dateien_array[$i] = "_IEAction.txt" Then ;_IEAction
    $funktion = StringReplace($funktion_tmp, '$s_action', $teilfunktion)
    Else ;Controllistview, Controltreeview
    $funktion = StringReplace($funktion_tmp, '"command" [, option1 [, option2]]', $teilfunktion)
    EndIf
    $beschreibung = $teilfunktion_beschr
    $ergebnis = $funktion & " " & $beschreibung
    $t += 1
    $array_welches[$t] = $ergebnis

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

    EndIf
    EndIf
    EndIf

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

    If $opt_start = $i Then ;Sonderfunktion Opt
    For $u = 1 To UBound($array_opt) - 1
    $t += 1
    $funktion_opt = StringReplace($array_opt[$u], "AutoItSetOption", "Opt")
    $array_welches[$t] = $funktion_opt
    Next
    $opt_start = 0
    EndIf

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

    If $tcp_stopp_start = $i Then ;Sonderfunktion für UDPShutdown und UDPStartup
    $t += 1
    $array_welches[$t] = $ergebnis_tcp_stopp
    $tcp_start_start = 0
    $t += 1
    $array_welches[$t] = $ergebnis_tcp_start
    $tcp_stopp_start = 0
    EndIf

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

    Next

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

    If $include = "" Then
    $ergebnis = $funktion & " " & $beschreibung
    Else
    $ergebnis = $funktion & " " & $beschreibung & " (benötigt: " & $include & ")"
    EndIf

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

    ;nur eintragen wenn es keine Sonderfunktion ist (bei Sonderfunktionen erfolgt dies weiter oben)
    If $dateien_array[$i] <> "AutoItSetOption.txt" And $dateien_array[$i] <> "Controlcommand.txt" And $dateien_array[$i] <> "Controllistview.txt" And $dateien_array[$i] <> "ControlTreeview.txt" _
    And $dateien_array[$i] <> "ObjEvent.txt" And $dateien_array[$i] <> "_IEAction.txt" Then
    $t += 1
    $array_welches[$t] = $ergebnis
    EndIf
    EndIf
    Next
    ReDim $array_welches[$t + 1]
    EndFunc ;==>_einlesen

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

    ;************************************************************
    ; bestimmte Zeichen in der Beschreibung ersetzen *
    ;************************************************************

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

    Func _zeichen_ersetzen(ByRef $beschreibung_tmp)
    If StringInStr($beschreibung_tmp, '<a', 1) Then
    $beschreibung_tmp_zwischen = _StringBetween($beschreibung_tmp, '<a', '>')
    $beschreibung_tmp2 = $beschreibung_tmp_zwischen[0]
    $beschreibung_tmp = StringReplace($beschreibung_tmp, $beschreibung_tmp2, "")
    EndIf
    $beschreibung_tmp = StringRegExpReplace($beschreibung_tmp, '(</a>)|(<i>)|(</i>)|(<b>)|(</b>)|(<a>)', "") ; alles was in den Klammern steht entfernen
    EndFunc ;==>_zeichen_ersetzen

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

    ;****************************************************************************************************
    ; die fehlenden Funktionen zur neuen Version dazuschreiben (aus der originalen au3.api) *
    ;****************************************************************************************************

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

    Func _ueberpruefen()
    Dim $array_pruefen[10000]
    $max_array_ori = UBound($pruef_array_ori) - 1
    $max_array_uebersetzt = UBound($pruef_array_uebersetzt) - 1
    $max = _Max($max_array_ori, $max_array_uebersetzt)
    $p = 0
    $h = 0

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

    For $i = 1 To $max_array_uebersetzt
    $p += 1
    Dim $array_sortieren[3]
    _nur_name($pruef_array_ori, $p)
    $string_ori = $nur_Funktion
    $array_sortieren[1] = $nur_Funktion
    _nur_name($pruef_array_uebersetzt, $i)
    $array_sortieren[2] = $nur_Funktion

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

    If $array_sortieren[1] <> $array_sortieren[2] Then ; original <> übersetzt
    _ArraySort($array_sortieren, 0)
    ;~ ConsoleWrite($array_sortieren[1] & @CRLF)
    If $array_sortieren[1] = $string_ori And $array_sortieren[1] <> "ControlTreeView Command" And $array_sortieren[1] <> "_IEAction $s_action" Then ;neue Funktion >>> hinzu ;zusätzlich eine Funktion die im original 1-mal und im deutschen x-mal auftaucht ausschließen
    $eintragen = $pruef_array_ori[$p]
    $i -= 1
    Else ;ungültige Funktion >>> löschen
    ;Ausnahme ControlTreeView bleibt enthalten, da dies in der originale au3.api Datei nur 1x vorhanden ist, in der deutschen au3.api ist diese mehrmals vorhanden
    If StringInStr($array_sortieren[1], "ControlTreeView") Or StringInStr($array_sortieren[1], "_IEAction") Then
    $eintragen = $pruef_array_uebersetzt[$i]
    Else ;löschen
    $eintragen = ""
    EndIf
    $p -= 1
    EndIf
    If $array_sortieren[1] = "ControlTreeView Command" Or $array_sortieren[1] = "_IEAction $s_action" Then $p += 1 ;eine Funktion die im original 1-mal und im deutschen x-mal auftaucht ausschließen

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

    Else
    $eintragen = $pruef_array_uebersetzt[$i]
    EndIf

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

    If $eintragen <> "" Then
    $h += 1
    $array_pruefen[$h] = $eintragen
    EndIf
    Next
    ReDim $array_pruefen[$h + 1]

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

    ;au3.api löschen und neu schreiben
    FileDelete($zieldatei)
    _FileWriteFromArray($zieldatei, $array_pruefen, 1, 0)
    EndFunc ;==>_ueberpruefen

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

    ;****************************************************************************
    ; nur die Funktion aus der "Funktion mit Beschreibung" rausholen *
    ;****************************************************************************

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

    Func _nur_name(ByRef $array, $zaehler)
    $leerzeichen_pos = StringInStr($array[$zaehler], "(") - 1
    If $leerzeichen_pos > 0 Then
    $nur_Funktion = StringLeft($array[$zaehler], $leerzeichen_pos)
    Else
    $nur_Funktion = $array[$zaehler]
    EndIf
    $nur_Funktion = StringReplace($nur_Funktion, " ", "")
    ;~ ConsoleWrite($nur_Funktion & @CRLF)

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

    ;da diese Funktion mehrmals auftaucht, muss zusätzlich zum Funktionsname noch Parameter ausgelesen werden
    If $nur_Funktion = "AutoItSetOption" Or $nur_Funktion = "Opt" Then
    $unterfunktion_zwischen = _StringBetween($array[$zaehler], '"', '"')
    $unterfunktion = $unterfunktion_zwischen[0]
    $nur_Funktion = $nur_Funktion & " " & $unterfunktion
    EndIf

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

    ;da diese Funktion mehrmals auftaucht, muss zusätzlich zum Funktionsname noch Parameter ausgelesen werden
    If $nur_Funktion = "ControlCommand" Or $nur_Funktion = "ControlListView" Or $nur_Funktion = "ControlTreeView" Then
    $komma_pos = StringInStr($array[$zaehler], ',', 0, 3)
    $func_rechts = StringTrimLeft($array[$zaehler], $komma_pos - 1)
    $unterfunktion_zwischen = _StringBetween($func_rechts, '"', '"')
    $unterfunktion = $unterfunktion_zwischen[0]
    $nur_Funktion = $nur_Funktion & " " & $unterfunktion
    EndIf

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

    ;da diese Funktion mehrmals auftaucht, muss zusätzlich zum Funktionsname noch Parameter ausgelesen werden
    If $nur_Funktion = "_IEAction" Then
    $komma_pos = StringInStr($array[$zaehler], ',', 0, 1)
    $func_rechts = StringTrimLeft($array[$zaehler], $komma_pos - 1)
    $unterfunktion_zwischen = _StringBetween($func_rechts, ' ', ' ')
    $unterfunktion = $unterfunktion_zwischen[0]
    $unterfunktion = StringReplace($unterfunktion, '"', "")
    $nur_Funktion = $nur_Funktion & " " & $unterfunktion
    EndIf
    EndFunc ;==>_nur_name

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

    ;****************************************************************************
    ; korrigiert den Syntax (den der deutschen Hilfe verwenden) *
    ;****************************************************************************
    ;ACHTUNG sollte in Zukunft eine ältere deutsche Hilfe erstellt werden, obwohl es bereits eine neue AutoIt Version gibt, so sind die Syntaxe nicht aktuell

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

    Func _syntax_korrigieren()
    _FileReadToArray($pfad_datei_au3_api, $pruef_array_ori)
    _FileReadToArray($zieldatei, $pruef_array_uebersetzt)

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

    Dim $pruef_array_ori2[UBound($pruef_array_ori)]
    Dim $pruef_array_uebersetzt2[UBound($pruef_array_uebersetzt)]

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

    ;Ersatz Array original nur Funktionsname
    For $i = 1 To UBound($pruef_array_ori) - 1
    $pos = StringInStr($pruef_array_ori[$i], "(") - 1
    $func_name = StringLeft($pruef_array_ori[$i], $pos)
    $func_name = StringReplace($func_name, " ", "")
    $pruef_array_ori2[$i] = $func_name
    Next

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

    ;Ersatz Array übersetzt nur Funktionsname
    For $i = 1 To UBound($pruef_array_uebersetzt) - 1
    $pos = StringInStr($pruef_array_uebersetzt[$i], "(") - 1
    $func_name = StringLeft($pruef_array_uebersetzt[$i], $pos)
    $func_name = StringReplace($func_name, " ", "")
    $pruef_array_uebersetzt2[$i] = $func_name
    Next

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

    ;~ _ArrayDisplay($pruef_array_uebersetzt)

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

    ;wenn der Syntax unterschiedlich ist, dann den Syntax der englischen neuen Hilfe nehmen
    For $i = 1 To UBound($pruef_array_uebersetzt) - 1
    $func_name_suche = _ArraySearch($pruef_array_ori2, $pruef_array_uebersetzt2[$i])
    If $func_name_suche = -1 Then
    ;~ ConsoleWrite(" NICHT GEFUNDEN " & $pruef_array_ori[$i] & @tab & $pruef_array_uebersetzt2[$i] & @CRLF)
    Else
    $parameter_uebersetzt_zwischen = _StringBetween($pruef_array_uebersetzt[$i], "(", ")")
    If IsArray($parameter_uebersetzt_zwischen) Then
    If $parameter_uebersetzt_zwischen[0] <> "" Then
    $parameter_uebersetzt1 = $parameter_uebersetzt_zwischen[0]
    $parameter_ori_zwischen = _StringBetween($pruef_array_ori[$func_name_suche], "(", ")")
    $parameter_ori1 = $parameter_ori_zwischen[0]
    If $pruef_array_uebersetzt2[$i] <> "AutoItSetOption" And $pruef_array_uebersetzt2[$i] <> "Opt" And $pruef_array_uebersetzt2[$i] <> "Controlcommand" And $pruef_array_uebersetzt2[$i] <> "Controllistview" _
    And $pruef_array_uebersetzt2[$i] <> "ControlTreeview" And $pruef_array_uebersetzt2[$i] <> "ObjEvent" And $pruef_array_uebersetzt2[$i] <> "UDPStartup" And $pruef_array_uebersetzt2[$i] <> "UDPShutdown" _
    And $pruef_array_uebersetzt2[$i] <> "_IEAction" Then
    $pruef_array_uebersetzt[$i] = StringReplace($pruef_array_uebersetzt[$i], "(" & $parameter_ori1 & ")", "(" & $parameter_uebersetzt1 & ")")
    _zeichen_ersetzen($pruef_array_uebersetzt[$i])
    ;~ ConsoleWrite($pruef_array_uebersetzt[$i] & @TAB & @TAB & @TAB & "(" & $parameter_ori1 & ")" & @TAB & @TAB & @TAB & "(" & $parameter_uebersetzt1 & ")" & @CRLF)
    ;~ ConsoleWrite($pruef_array_uebersetzt[$i] & @TAB & @TAB & @TAB & $parameter_uebersetzt1 & @TAB & @TAB & @TAB & $parameter_ori1 & @CRLF)
    EndIf
    EndIf
    EndIf

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

    EndIf
    Next

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

    ;au3.api löschen und neu schreiben
    FileDelete($zieldatei)
    _FileWriteFromArray($zieldatei, $pruef_array_uebersetzt, 1, 0)
    EndFunc ;==>_syntax_korrigieren

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

    ;************************************************************************************
    ; Kontrolle ob alle Funktionen auch in der au3.api enthalten sind) *
    ;************************************************************************************

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

    Func _kontrolle($dateien_array)
    For $i = 1 To UBound($dateien_array) - 1
    If Not StringInStr($dateien_array[$i], '$tag') Then ;$tag-Funktionen auslassen
    $suchbegriff = StringReplace($dateien_array[$i], '.txt', "") & '(' ;Funktionsame mit Klammer
    $search = _ArraySearch($array_alles_da_api, $suchbegriff, 1, 0, 0, 1) ;in der au3.api danach suchen
    If $search = -1 Then
    $suchbegriff = StringReplace($dateien_array[$i], '.txt', "") & ' (' ;Funktionsame mit Komma und Klammer
    $search = _ArraySearch($array_alles_da_api, $suchbegriff, 1, 0, 0, 1) ;in der au3.api danach suchen
    If $search = -1 Then
    ConsoleWrite($dateien_array[$i] & @CRLF) ;fehlende Funktionen in der au3.api
    EndIf
    EndIf
    EndIf
    Next
    EndFunc ;==>_kontrolle

    [/autoit]

    Folgende Funktionen sind mehrfach aufgelistet:
    AutoItSetOption
    ControlCommand
    ControlListView
    Opt
    Wobei Opt ja unter AutoItSetOption läuft. Opt als txt-Datei gibts nicht.
    ControlTreeView erscheint komischerweise in der englischen Hilfe nur einmal, obwohl es eigentlich auch mehrere Befehle gibt.
    Durch mein Script wird auch ControlTreeView mehrmals aufgelistet.

    Es sind nur gültige Funktionen der AutoIt Version 3.3.0.0 enthalten.

    Script ausgelegt auf
    ;Scite:vom 20.12.2008
    ;AutoIt:3.3.0.0
    ;deutsche Hilfe:3.3.0.0

    Die neue deutsche au3.api Datei muß bei jeder neuen Scite Version und jeder neuen AutoIt Version neu von peethebee erstellt werden.
    Die erstellte Datei findet ihr links unter AutoIt Downloads - Hilfe: Deutsch

    EDIT: 3.1 unnötige Tabs entfernt
    EDIT: 3.2 nun wird _IEAction auch mehrmals aufgelistet
    Edit peethebee: Anpassungen der Pfade für mich (allgemeiner gehalten). Ich habe eine Datei base_au3.api mit den Originaldaten, damit eine au3.api im ScriptDir erzeugt werden kann.

    EDIT: 3.3 kleinen Fehler behoben
    EDIT: 3.4 ObjEvent wird nun korrekterweise zweimal angezeigt / UDPShutdown und UDPStartup werden nun auch automatisch übersetzt
    EDIT: 3.5 Splash-Fenster eingefügt, englische au3.api aktualisiert
    EDIT: 3.6 diverse Anpassungen, englische au3.api aktualisiert

  • OrganizeIncludes

    • Tweaky
    • 23. August 2008 um 23:43

    Hi BugFix,
    dies stimmt, da das zu suchende Array einen falschen Bereich hatte
    siehe hier
    Update auf 4.3 und es läuft (engl. Forum)

  • Drop löscht bisherigen Inhalt im Edit

    • Tweaky
    • 23. August 2008 um 12:37

    Hi,
    habs doch hinbekommen :D

    Spoiler anzeigen
    [autoit]

    #include <GuiEdit.au3>
    #include <GuiListView.au3>
    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>

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

    Dim $markiert_vorher

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

    Opt("GUIOnEventMode", 1)
    $Form1 = GUICreate("Form1", 690, 222, 195, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
    GUISetOnEvent($GUI_EVENT_DROPPED, '_dropped')
    $ListView1 = GUICtrlCreateListView("Tabelle", 455, 8, 230, 189)
    GUICtrlSendMsg(-1, 0x101E, 0, $LVSCW_AUTOSIZE_USEHEADER)
    $LVTable = GUICtrlGetHandle($ListView1)
    $Edit1 = GUICtrlCreateEdit("Bla-Bla ", 8, 8, 441, 189)
    GUICtrlSetState($Edit1, $GUI_DROPACCEPTED)
    $hEdit = GUICtrlGetHandle($Edit1)
    For $i = 1 To 10
    _GUICtrlListView_AddItem($LVTable, 'Eintrag ' & StringRight('0' & $i, 2))
    Next
    GUISetState()

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

    While True
    Sleep(10)
    $markiert = _GUICtrlListView_GetSelectedIndices($ListView1, False)
    If _GUICtrlListView_GetSelectedCount($ListView1) > 0 And $markiert_vorher <> $markiert Then
    $markiert_vorher = $markiert
    $text_bisher = GUICtrlRead($Edit1)
    EndIf
    WEnd

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

    Func Form1Close()
    Exit
    EndFunc ;==>Form1Close

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

    Func _dropped()
    If @GUI_DropId <> $Edit1 Then Return
    If @GUI_DragId = $ListView1 Then
    $strAppend = _GUICtrlListView_GetItemText($LVTable, _GUICtrlListView_GetSelectedIndices($LVTable))
    _GUICtrlEdit_SetText($Edit1, $text_bisher)
    _GUICtrlEdit_AppendText($hEdit, $strAppend)
    EndIf
    EndFunc ;==>_dropped

    [/autoit]
  • Drop löscht bisherigen Inhalt im Edit

    • Tweaky
    • 23. August 2008 um 12:11

    Hi,
    habs mal probiert, aber leider nicht geschafft.
    Schon komisch.
    Hab gedacht ich kann den bisherigen Text auslesen und dann diesen und den neuen Text ins Edit schreiben.
    Geht aber leider nicht, dass die @GUI_DragId erst reagiert wenn man das drag&drop abgeschlossen hat :S

    mit _guictrledit_create ... bekomme ich nichtmal drag&drop hin.

    Komisch, komisch.
    Würde ich auf jeden Fall mal im engl. Board posten und schauen was die dazu meinen.

    Würde mich aber brennend interessieren an was das liegt ?(

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 23. August 2008 um 01:00

    @cat1510
    Wenn ich dich richtig verstehe,
    hast du die Internet 350 und die G15 im Vergleich gesehen?
    Welche ist vom Anschlag her besser?
    Hm die 350 würde mir fast reichen.
    Hab aber gelesen, dass die keine vor-zurück für Musik hat :evil:

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 22. August 2008 um 23:58

    OK, hört sich gut an, mußt es ja wissen, da du beide hattest.
    Wie ist das Tastenlayout?
    Ist die Entertaste auch groß (wie auf dem Bild)?
    Ist der Block wie Bild auf und Bild aub drauf ist wie auf dem Bild?

    @fabs:
    meinste dass die G11 und G15 im Anschlag schlecht sind oder nur eine von beiden?
    Oder wars ein Vorführgerät in einem großen Laden :rofl:

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 22. August 2008 um 23:13

    Ah,
    endlich auf deine Antwort habe ich gewartet :D
    du bist glaub ich der erste bei dem ich lese, das die V2 besser ist.
    G-Tasten wären mir egal, da ich nicht spiele.
    Für was braucht man das Displayso (außer für Spielen)?
    Würde die G11 reichen oder gibts da gravierende Nachteile?

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 22. August 2008 um 20:00

    Hi,
    ist das Layout der Standardtasten wirklich exakt gleich.
    Weil hier ist die Entertaste anders:
    https://autoit.de/schauen

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 22. August 2008 um 15:16

    Hi,
    dies ist aber ein Set Tastatur/Maus, oder?

  • neue Tastatur G15 oder doch Cherry?

    • Tweaky
    • 22. August 2008 um 14:16

    Hi,
    momentan habe ich diese Tastatur
    diese hab ich
    (ebayer bin nicht ich, habs nur wegen dem Bild genommen )

    Da dieses nun schon 6 Jahre alt ist, will ich mir ne neue kaufen.

    Wie ich jedoch sehen mußte, sind praktisch alle Tastaturen auf das neue Tastenlayout ausgelegt (Einfg, Entf, Enter, ...)

    Gibt es noch eine Tastatur die folgendes hat:
    - altes Layout wie die Tastatur auf dem Bild
    - Sondertasten für Musik, ...
    - KEIN dauerndes einschalten der F-Tasten bei jedem Start (wie auf meiner jetzigen, nervt )
    - Standardtasten (keine flachen Laptop-Tasten)
    - Farbe egal
    - wenns geht MIT Kabel
    - Hersteller: Logitech, wenn nicht halt ein anderer

    Denke die müssten einige hier im Board haben, oder?

    PS: zum spielen brauche ich sie nicht.

    Wie ich gesehen habe hätte die G15 all diese Vorraussetzungen.
    Wie seid ihr damit zufrieden?
    Gibts noch andere?
    Bei der G11 ist die Enter Taste anders, oder?


    Danke

  • geänderte / neue / ungültige Funktionen 3.3.4.0 auf 3.3.6.0

    • Tweaky
    • 22. August 2008 um 13:25

    Habs nochmal erweitert.

    nun sind noch
    - Änderungen an htm-Seiten
    - Änderungen an Beispielen
    enthalten

  • _GUICtrlListViewGetItemText Beispiel aus dem Deutschen Tutorial

    • Tweaky
    • 20. August 2008 um 21:23

    Hi,
    die Funktion die du oben verwendest heissen nun anders
    _GUICtrlListViewGetItemCount >>> _GUICtrlListView_GetItemCount
    _GUICtrlListViewGetItemText >>> GUICtrlListView_GetItemText
    am besten die Hilfe lesen, die dürfte aktueller als das Tut sein

  • Gui wird als Func aufgerufen und bleibt dann geöffnet.

    • Tweaky
    • 20. August 2008 um 17:03

    schau mal hier

  • 2D Array sortieren

    • Tweaky
    • 20. August 2008 um 16:55

    Hi,
    komisch bei mir gehts auch.
    hast du auch die neueste Scite Version vom 14.08.2008, AutoIt 3.2.12.1 drauf?
    Vielleicht liegts ja daran.
    Oder eben Vista :rofl:

  • Script ArchiCrypt Stealth VPN

    • Tweaky
    • 20. August 2008 um 11:36

    Schon sehr seltsam,
    mach mal einen Screenshot von dem Programmfenster mit dem Freischalten Button

  • Script ArchiCrypt Stealth VPN

    • Tweaky
    • 20. August 2008 um 11:24

    Hi,
    probier mal dies hier

    [autoit]

    ControlClick("ArchiCrypt Stealth VPN", "Freischalten", "Button2")

    [/autoit]

    Vorher mußt du eventuell noch ein WinWait einfügen

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™