Es war eine mühsame Arbeot, die Wörterdatenbank aus alles möglichen Büchern und Websiten abzuschreiben ( :wacko: ), und hier ist er, mein Offlineübersetzter mit 130 000 Schlagwörtern. Noch ist er sehr langsam. Im Anhang ist das Skript und die Datenbank, bitte, die Datenbank kann von jedem verwendet werden, aber bitte meinen Namen mit in die Credits schreiben.
//EDIT: Nicht mehr langsam, jetzt statt 148s nur noch 0,029s, dank autoBert
//EDIT: Kein fehler mehr bei "Deutsch..." oder "English..." Eingabe dank mir
//EDIT: Mehrere Ergebnisse dank chip
//EDIT: Kein Kommafehler mehr dank autoAbert
//EDIT: Jetzt "Nicht gefunden Meldung" statt Error dank mir
//EDIT: Kürzerer Code dank allen
Skript:
Spoiler anzeigen
#include <File.au3>
#include <Array.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$datei = @ScriptDir & "\dic.dic"
Global $aSearch[1]
_FileReadToArray($datei,$aSearch)
#Region ### START Koda GUI section ### Form=
$Translato = GUICreate("Translator by campweb | DE<>BE/AE", 322, 291, 391, 158)
$Label1 = GUICtrlCreateLabel("Von Deutsch zu Englisch:", 8, 8, 126, 17)
$deutsch = GUICtrlCreateInput("Deutsch...", 8, 32, 305, 21)
$Input2 = GUICtrlCreateInput("Englisch...", 8, 56, 305, 21, BitOR($ES_AUTOHSCROLL,$ES_READONLY))
$Button1 = GUICtrlCreateButton("Übersetzen", 8, 80, 305, 25, 0)
$Label2 = GUICtrlCreateLabel("From English to German:", 8, 112, 119, 17)
$engl = GUICtrlCreateInput("English...", 8, 136, 305, 21)
$Input4 = GUICtrlCreateInput("Deutsch...", 8, 160, 305, 21, BitOR($ES_AUTOHSCROLL,$ES_READONLY))
$Button2 = GUICtrlCreateButton("Translate", 8, 184, 305, 25, 0)
$Edit1 = GUICtrlCreateEdit("", 8, 216, 305, 65)
GUICtrlSetData(-1, "Edit1")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
GUICtrlSetData($Edit1, "Initialisiere...")
Sleep(1000)
If GUICtrlRead($deutsch) = "Deutsch..." Then
GUICtrlSetData($Edit1, "Fehler...")
Sleep(1000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Beginne Suche nach: "'&GUICtrlRead($deutsch)&'" Bitte warten...')
$time = TimerInit()
$suche = GUICtrlRead($deutsch)
$aRes = _ArrayFindAll($aSearch,$suche)
$sFound = ""
$j = UBound($aRes)
if IsArray($aRes) Then
for $i = 0 to $j-1
if $aRes[$i] > 0 and $aRes[$i] < $aSearch[0]-1 Then
$sFound &= $aSearch[$aRes[$i]-1]
if $i <> $j-1 Then $sFound &= ", "
EndIf
Next
EndIf
EndIf
GUICtrlSetData($Input2,$sFound)
If GUICtrlRead($Input2) = "" Then
GUICtrlSetData($Edit1, "Nicht gefunden!")
Sleep(2000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Suche nach "'&GUICtrlRead($deutsch)&'" erfolgreich! Zeit: '&Round(TimerDiff($time)/1000, 3)&"s")
EndIf
Case $Button2
GUICtrlSetData($Edit1, "Initialisiere...")
Sleep(1000)
If GUICtrlRead($engl) = "English..." Then
GUICtrlSetData($Edit1, "Fehler...")
Sleep(1000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Beginne Suche nach: "'&GUICtrlRead($engl)&'" Bitte warten...')
$time = TimerInit()
$suche = GUICtrlRead($engl)
$aRes = _ArrayFindAll($aSearch,$suche)
$sFound = ""
$j = UBound($aRes)
if $j > -1 Then
for $i = 0 to UBound($aRes) -1
if $aRes[$i] > 0 and $aRes[$i] < $aSearch[0] Then
$sFound &= $aSearch[$aRes[$i]+1]
if $i <> $j-1 Then $sFound &= ", "
EndIf
Next
EndIf
EndIf
GUICtrlSetData($Input4,$sFound)
If GUICtrlRead($Input4) = "" Then
GUICtrlSetData($Edit1, "Nicht gefunden!")
Sleep(2000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Suche nach "'&GUICtrlRead($engl)&'" erfolgreich! Zeit: '&Round(TimerDiff($time)/1000, 3)&"s")
EndIf
EndSwitch
WEnd
berichtigte Version:
#include <File.au3>
#include <Array.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$datei = @ScriptDir & "\dic.dic"
Global $aSearch[1]
_FileReadToArray($datei, $aSearch)
#Region ### START Koda GUI section ### Form=
$Translato = GUICreate("Translator by campweb | DE<>BE/AE", 322, 291, 391, 158)
$Label1 = GUICtrlCreateLabel("Von Deutsch zu Englisch:", 8, 8, 126, 17)
$deutsch = GUICtrlCreateInput("Deutsch...", 8, 32, 305, 21)
$Input2 = GUICtrlCreateInput("Englisch...", 8, 56, 305, 21, BitOR($ES_AUTOHSCROLL, $ES_READONLY))
$Button1 = GUICtrlCreateButton("Übersetzen", 8, 80, 305, 25, 0)
$Label2 = GUICtrlCreateLabel("From English to German:", 8, 112, 119, 17)
$engl = GUICtrlCreateInput("English...", 8, 136, 305, 21)
$Input4 = GUICtrlCreateInput("Deutsch...", 8, 160, 305, 21, BitOR($ES_AUTOHSCROLL, $ES_READONLY))
$Button2 = GUICtrlCreateButton("Translate", 8, 184, 305, 25, 0)
$Edit1 = GUICtrlCreateEdit("", 8, 216, 305, 65)
GUICtrlSetData(-1, "Edit1")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
GUICtrlSetData($Edit1, "Initialisiere...")
Sleep(1000)
If GUICtrlRead($deutsch) = "Deutsch..." Then
GUICtrlSetData($Edit1, "Fehler...")
Sleep(1000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Beginne Suche nach: "' & GUICtrlRead($deutsch) & '" Bitte warten...')
$time = TimerInit()
$suche = GUICtrlRead($deutsch)
$aRes = _ArrayFindAll($aSearch, $suche)
$sFound = ""
$j = UBound($aRes)
If IsArray($aRes) Then
For $i = 0 To $j - 1
If $aRes[$i] > 0 And $aRes[$i] < $aSearch[0] - 1 Then
$sFound &= $aSearch[$aRes[$i] - 1]
If $i <> $j - 1 Then $sFound &= ", "
EndIf
Next
EndIf
GUICtrlSetData($Input2, $sFound)
If GUICtrlRead($Input2) = "" Then
GUICtrlSetData($Edit1, "Nicht gefunden!")
Sleep(2000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Suche nach "' & GUICtrlRead($deutsch) & '" erfolgreich! Zeit: ' & Round(TimerDiff($time) / 1000, 3) & "s")
EndIf
EndIf
Case $Button2
GUICtrlSetData($Edit1, "Initialisiere...")
Sleep(1000)
If GUICtrlRead($engl) = "English..." Then
GUICtrlSetData($Edit1, "Fehler...")
Sleep(1000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Beginne Suche nach: "' & GUICtrlRead($engl) & '" Bitte warten...')
$time = TimerInit()
$suche = GUICtrlRead($engl)
$aRes = _ArrayFindAll($aSearch, $suche)
$sFound = ""
$j = UBound($aRes)
If $j > -1 Then
For $i = 0 To UBound($aRes) - 1
If $aRes[$i] > 0 And $aRes[$i] < $aSearch[0] Then
$sFound &= $aSearch[$aRes[$i] + 1]
If $i <> $j - 1 Then $sFound &= ", "
EndIf
Next
EndIf
EndIf
GUICtrlSetData($Input4, $sFound)
If GUICtrlRead($Input4) = "" Then
GUICtrlSetData($Edit1, "Nicht gefunden!")
Sleep(2000)
GUICtrlSetData($Edit1, "Erneut versuchen!")
Else
GUICtrlSetData($Edit1, 'Suche nach "' & GUICtrlRead($engl) & '" erfolgreich! Zeit: ' & Round(TimerDiff($time) / 1000, 3) & "s")
EndIf
EndSwitch
WEnd
Alles anzeigen
Datenbank im Anhang!