Wie wärs mit _StringBetween?
Beiträge von Ineluki
-
-
Juhu, bei mir klappts, nachdem ich den Pfad manuell eingegeben hab auch *freu*
-
Guck dir mal AdlibRegister() an
-
Bei mir klappts aber auch nicht.. Hab Windows 7 Home Edition 64 Bit
-
Meine Kritik:
-bei den Globalen Variablen fehlt ein Global $Timer2
-mir ist die Schlange viiieeel zu langsam -
Am leichtesten wäre es, wenn du im OnEventMode arbeitest

-
Ich hab es so verstanden, dass er die Maus irgendwo hinsetzen will und das Script sich die Posi merken soll und da dann dauerklicken soll.
-
[autoit]
MouseGetPos()
[/autoit] -
Es gibt eine sehr ausführliche Hilfe...
-
Ich hab dir bereits alle Befehle aufgelistet, die du brauchst.
-
Ich will ein Textdokument mit dem Scripts speichern können und den Speicherort bestimmen können..
Das hört sich nicht gerade sehr deutsch an... -
Vllt. helfen dir ja ein paar von folgenden Befehlen
[autoit]ControlGetText()
[/autoit]
ControlSend()
ControlClick()
Send()
FileWrite() -
Es fehlt nur ein GUISetState()

-
Danke, aber der beste bin ich noch lange nicht ^^.
Warum deine Methode nicht klappt weiß ich leider nicht, aber so geht es:Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
Global $menu1, $n1, $satz, $n2
Opt("GUIOnEventMode", 1)
Opt('MustDeclareVars', 1)
GUICreate("Multi-Übersetzer") ; Erstellt ein GUI-Fenster welches mittig ausgerichtet wird
GUISetOnEvent(-3, "_exit")
$menu1 = GUICtrlCreateMenu("")
$n1 = GUICtrlCreateList("", 10, 10, -1, 100)
GUICtrlSetData(-1, "Deutsch - Englisch|Deutsch - Französisch|Englisch - Deutsch|Englisch - Französisch|Englisch - Niederländisch|Englisch - Griechisch|Englisch - Italienisch|Englisch - Spanisch|Englisch - Russisch", "")
GUICtrlCreateLabel("Satz:", 10, 125, -1, 15)
$satz=GUICtrlCreateInput("", 40, 120, 90, 20)
$n2 = GUICtrlCreateButton("Übersetzen", 10, 150, 70)
GUICtrlSetOnEvent(-1, "n2")
GUICtrlSetState(-1, $GUI_FOCUS) ; Der Fokus liegt auf diesem Button
GUISetState() ; Zeigt das leere GUI-Fenster
While true
WEndFunc n2()
[/autoit] [autoit][/autoit] [autoit]
If GUICtrlRead($n1)="Deutsch - Englisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "de-en"))
If GUICtrlRead($n1)="Deutsch - Französisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "de-fr"))
If GUICtrlRead($n1)="Englisch - Deutsch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-de"))
If GUICtrlRead($n1)="Englisch - Französisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-fr"))
If GUICtrlRead($n1)="Englisch - Niederländisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-nl"))
If GUICtrlRead($n1)="Englisch - Griechisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-el"))
If GUICtrlRead($n1)="Englisch - Italienisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-it"))
If GUICtrlRead($n1)="Englisch - Spanisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-es"))
If GUICtrlRead($n1)="Englisch - Russisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-ru"))
EndFunc
Func Translate($satz, $language)
Local $translate, $i, $escaped
For $i = 1 To StringLen($satz)
If "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) < 0x21 Or "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) = 0x25 Or "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) = 0x2f Or "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) > 0x7f Then
$escaped = $escaped & '%' & Hex(Asc(StringMid($satz, $i, 1)), 2)
Else
$escaped = $escaped & Chr("0x" & Hex(Asc(StringMid($satz, $i, 1)), 2))
EndIfNext
[/autoit]
InetGet("http://babelfish.yahoo.com/translate_txt?ei=UTF-8&doit=done&fr=bf-res&intl=1&tt=urltext&trtext=" & $escaped & "&lp=" & StringReplace($language, "-", "_") & "&btnTrTxt=Translate", @TempDir & "translate.dll")
$translate = FileRead(@TempDir & "translate.dll")
FileDelete(@TempDir & "translate.dll")
$translate = StringMid($translate, StringInStr($translate, '<div id="result">'))
$translate = StringMid($translate, StringInStr($translate, '>') + 1)
$translate = StringMid($translate, StringInStr($translate, '>') + 1)
$translate = StringLeft($translate, StringInStr($translate, '<') - 1)
Return $translate
EndFunc ;==>Translate
Func _exit()
Exit
EndFunc -
Du kannst keine Func in eine Func einbauen
So geht es z.b.:Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
Global $n2, $satz
Opt('MustDeclareVars', 1)Example()
[/autoit] [autoit][/autoit] [autoit]Func Example()
[/autoit] [autoit][/autoit] [autoit]
Local $menu1, $n1, $msg, $menustate, $menutextGUICreate("Multi-Übersetzer") ; Erstellt ein GUI-Fenster welches mittig ausgerichtet wird
[/autoit] [autoit][/autoit] [autoit]$menu1 = GUICtrlCreateMenu("")
[/autoit] [autoit][/autoit] [autoit]$n1 = GUICtrlCreateList("", 10, 10, -1, 100)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData(-1, "Deutsch - Englisch|Deutsch - Französisch|Englisch - Französisch", "")
GUICtrlCreateLabel("Satz:", 10, 125, -1, 15)
$satz=GUICtrlCreateInput("", 40, 120, 90, 20)
$n2 = GUICtrlCreateButton("Weiter", 10, 150, 50)
GUICtrlSetState(-1, $GUI_FOCUS) ; Der Fokus liegt auf diesem ButtonGUISetState() ; Zeigt das leere GUI-Fenster
[/autoit] [autoit][/autoit] [autoit]
; Führt das GUI aus, bis der Dialog geschlossen wird
Do
$msg = GUIGetMsg()
If $msg = $n2 Then
If GUICtrlRead($n1)="Deutsch - Englisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "de-en"))
If GUICtrlRead($n1)="Deutsch - Französisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "de-fr"))
If GUICtrlRead($n1)="Englisch - Französisch" Then MsgBox(0, "Übersetzung", translate(GUICtrlRead($satz), "en-fr"))
EndIf
Until $msg = $GUI_EVENT_CLOSE
EndFunc ;==>ExampleFunc Translate($satz, $language)
[/autoit] [autoit][/autoit] [autoit]
Local $translate, $i, $escaped
For $i = 1 To StringLen($satz)
If "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) < 0x21 Or "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) = 0x25 Or "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) = 0x2f Or "0x" & Hex(Asc(StringMid($satz, $i, 1)), 2) > 0x7f Then
$escaped = $escaped & '%' & Hex(Asc(StringMid($satz, $i, 1)), 2)
Else
$escaped = $escaped & Chr("0x" & Hex(Asc(StringMid($satz, $i, 1)), 2))
EndIf$n2 = GUICtrlCreateButton("Weiter", 10, 150, 50)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetState(-1, $GUI_FOCUS) ; Der Fokus liegt auf diesem ButtonNext
[/autoit]
InetGet("http://babelfish.yahoo.com/translate_txt?ei=UTF-8&doit=done&fr=bf-res&intl=1&tt=urltext&trtext=" & $escaped & "&lp=" & StringReplace($language, "-", "_") & "&btnTrTxt=Translate", @TempDir & "translate.dll")
$translate = FileRead(@TempDir & "translate.dll")
FileDelete(@TempDir & "translate.dll")
$translate = StringMid($translate, StringInStr($translate, '<div id="result">'))
$translate = StringMid($translate, StringInStr($translate, '>') + 1)
$translate = StringMid($translate, StringInStr($translate, '>') + 1)
$translate = StringLeft($translate, StringInStr($translate, '<') - 1)
Return $translate
EndFunc ;==>Translate -
Genau. Und jenachdem, welche Sprache ausgewählt wurde, rufst du die Funktion mit dem und dem Parameter auf.
-
Dateien ausführen kannst du mit ShellExecute() . Aber du kannst auch statt einer Datei eine Funktion in deinem Programm aufrufen lassen, dann braucht man, wenn man dein Programm ausführen will nicht 20 Dateien, sondern nur eine

-
Mit GUICreate() erstellst du eine GUI. Mit GUICtrlCreateCombo() kannst du dann die Comboliste erstellen.
Beispiel:Spoiler anzeigen
[autoit]Opt("GUIOnEVentMode", 1)
[/autoit]
$hGUI = GUICreate("Combo Box Beispiel", 357, 73, 192, 124)
GUISetOnEvent(-3, "_exit")
GUICtrlCreateLabel("Bitte wählen sie eine Sprache aus.", 8, 8, 167, 17)
$Combo = GUICtrlCreateCombo("", 200, 8, 145, 25)
GUICtrlSetData(-1, "Deutsch|Englisch|Französisch")
$start = GUICtrlCreateButton("Start", 72, 40, 75, 25)
GUICtrlSetOnEvent(-1, "testfunc")
GUISetState(@SW_SHOW)
While True
WEnd
Func testfunc()
MsgBox(64, "Combo Box Beispiel", "Es wurde "&GUICtrlRead($combo)&" ausgewählt.")
EndFunc
Func _exit()
Exit
EndFunc -
Suchst du
[autoit]GUICtrlCreateCombo()
[/autoit]?
-
Achso, ich dachte du wolltest abfragen, ob die linke Maustaste gedrückt wurde...
[autoit]MouseClick()
[/autoit]