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

Beiträge von Greek

  • [FuncSuche] Bereits exestierende Animationen + Sprechfunktion

    • Greek
    • 3. Juli 2009 um 23:06

    So:

    Spoiler anzeigen
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    Global $voice = ObjCreate("Sapi.SpVoice")

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("SpeakMaster2009", 633, 447, 193, 125)
    $Edit1 = GUICtrlCreateEdit("", 112, 64, 321, 169)
    $Button1 = GUICtrlCreateButton("Sprechen", 192, 256, 161, 73, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    Speak(GUICtrlRead($Edit1),0.5,100)
    EndSwitch
    WEnd

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

    Func Speak($Text, $Rate, $Vol)
    $voice.Rate = $Rate
    $voice.Volume = $Vol
    $voice.Speak ($Text)
    EndFunc;==>Speak

    [/autoit]
  • Gui mit Desktop hintergrund

    • Greek
    • 3. Juli 2009 um 22:51

    (6.)

    Habs mal geschrieben:

    Spoiler anzeigen
    [autoit]

    ;Author: Greek
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #Include <GDIPlus.au3>

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

    HotKeySet ("{ESC}","_CleanEnd")

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

    Global $GUIBreite=400
    Global $GUIHoehe=150

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

    $hGui=GUICreate("Uhr", $GUIBreite, $GUIHoehe, Default, Default, $WS_POPUP, BitOR($WS_EX_LAYERED,$WS_EX_TOOLWINDOW,$WS_EX_TOPMOST))
    GUISetBkColor(0x000000)
    GUICtrlCreateLabel("", 0, 0, $GUIBreite, $GUIHoehe, -1, $GUI_WS_EX_PARENTDRAG)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    _WinAPI_SetLayeredWindowAttributes($hGui, 0x000000, 255,0x02)
    _GuiRoundCorners($hGui,0,0,50,50)
    GUISetState()

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

    GUIRegisterMsg(0x0003,"MY_WM_MOVE")
    _GDIPlus_Startup()

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

    $hGraphic=_GDIPlus_GraphicsCreateFromHWND($hGui)
    $hBrush = _GDIPlus_BrushCreateSolid (0xFFDAA520)
    $hFormat = _GDIPlus_StringFormatCreate ()
    $hFamily = _GDIPlus_FontFamilyCreate ("Arial")
    $hFont = _GDIPlus_FontCreate ($hFamily, 40, 2)
    $tLayout = _GDIPlus_RectFCreate (85, 40, 300, 100)
    _GDIPlus_GraphicsDrawStringEx ($hGraphic, @HOUR&":"&@MIN&":"&@SEC, $hFont, $tLayout, $hFormat, $hBrush)

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

    AdlibEnable("_Update",200)

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

    While 1
    _GDIPlus_GraphicsClear($hGraphic,0xFF000000)
    _GDIPlus_GraphicsDrawStringEx ($hGraphic, @HOUR&":"&@MIN&":"&@SEC, $hFont, $tLayout, $hFormat, $hBrush)
    Sleep ( 1000 )
    WEnd

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

    Func _WinAPI_SetLayeredWindowAttributes($hwnd, $i_transcolor, $Transparency = 255, $dwFlages = 0x03, $isColorRef = False)
    ; progandy
    If $dwFlages = Default Or $dwFlages = "" Or $dwFlages < 0 Then $dwFlages = 0x03
    If Not $isColorRef Then
    $i_transcolor = Hex(String($i_transcolor), 6)
    $i_transcolor = Execute('0x00' & StringMid($i_transcolor, 5, 2) & StringMid($i_transcolor, 3, 2) & StringMid($i_transcolor, 1, 2))
    EndIf
    Local $Ret = DllCall("user32.dll", "int", "SetLayeredWindowAttributes", "hwnd", $hwnd, "long", $i_transcolor, "byte", $Transparency, "long", $dwFlages)
    Select
    Case @error
    Return SetError(@error, 0, 0)
    Case $Ret[0] = 0
    Return SetError(4, _WinAPI_GetLastError(), 0)
    Case Else
    Return 1
    EndSelect
    EndFunc ;==>_WinAPI_SetLayeredWindowAttributes

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

    Func MY_WM_MOVE()
    WinSetTrans("Uhr","",150)
    EndFunc

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

    Func _Update()
    $pos=WinGetPos("Uhr")
    $pos2=WinGetPos("Uhr")
    If $pos[0] = $pos2[0] And $pos[1] = $pos2[1] Then
    WinSetTrans("Uhr","",254)
    EndIf
    EndFunc

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

    Func _CleanEnd()
    _GDIPlus_FontDispose ($hFont)
    _GDIPlus_FontFamilyDispose ($hFamily)
    _GDIPlus_StringFormatDispose ($hFormat)
    _GDIPlus_BrushDispose ($hBrush)
    _GDIPlus_GraphicsDispose ($hGraphic)
    _GDIPlus_Shutdown ()
    Exit
    EndFunc

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

    Func _GuiRoundCorners($hWnd, $x1, $y1, $x3, $y3)
    Local $pos, $ret, $ret2
    $pos = WinGetPos($hWnd)
    $ret = DllCall('gdi32.dll', 'long', 'CreateRoundRectRgn', 'long', $x1, 'long', $y1, 'long', $pos[2], 'long', $pos[3], 'long', $x3, 'long', $y3)
    If $ret[0] Then
    $ret2 = DllCall('user32.dll', 'long', 'SetWindowRgn', 'hwnd', $hWnd, 'long', $ret[0], 'int', 1)
    If $ret2[0] Then
    Return 1
    Else
    Return 0
    EndIf
    Else
    Return 0
    EndIf
    EndFunc

    [/autoit]

    Da siehst du ja wie es ungefair geht :)

  • [FuncSuche] Bereits exestierende Animationen + Sprechfunktion

    • Greek
    • 3. Juli 2009 um 21:50
    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Lade Vorgang ", 423, 236, 192, 124)
    $Progress1 = GUICtrlCreateProgress(56, 192, 278, 25,$PBS_SMOOTH)
    $Pic1 = GUICtrlCreatePic(@DocumentsCommonDir & '\Eigene Bilder\Beispielbilder\Winter.jpg', 56, 16, 297, 153)

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

    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    For $i = 10 to 100 step 10
    GUICtrlSetData($Progress1,$i)
    Sleep ( 200 )
    Next

    [/autoit]

    Oder:

    Spoiler anzeigen
    [autoit]

    ProgressOn("Läd...", "Lade")
    For $i = 10 to 100 step 10
    ProgressSet($i,"Lade..")
    Sleep ( 200 )
    Next
    ProgressOff()

    [/autoit]
  • [FuncSuche] Bereits exestierende Animationen + Sprechfunktion

    • Greek
    • 3. Juli 2009 um 21:36

    Hier nen bischen Zauberei:

    Spoiler anzeigen
    [autoit]

    HotKeySet("{ESC}","_ende")
    Global $go=1

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

    $Id=AgentStartup()

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

    AgentSetPosition($Id[1])
    AgentShow($Id[1])
    AgentAnimate($Id[1],"DoMagic1")
    AgentAnimate($Id[1],"DoMagic2")
    AgentSpeak($Id[1],"Tada")

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

    Do
    Sleep ( 100 )
    Until $go=0

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

    AgentShutdown($Id[0],$Id[1])

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

    Func AgentStartup($char="merlin.acs")
    Local $result[2]
    $Agent = "Agent.Control.2"
    If IsObj($Agent) Then
    $Agent = ObjGet("",$Agent)
    Else
    $Agent = ObjCreate($Agent)
    EndIf
    $Agent.Connected = 1
    $Agent.Characters.Load ("Rover",@WindowsDir & "\Msagent\Chars\"&$char)
    $A_Chr = $Agent.Characters.Character("rover")
    $result[0]=$Agent
    $result[1]=$A_Chr
    Return $result
    EndFunc

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

    Func AgentShow($CharId)
    $CharId.Show()
    EndFunc

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

    Func AgentAnimate($CharId,$AnimationName)
    $CharId.Play($AnimationName)
    EndFunc

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

    Func AgentSpeak($CharId,$Text)
    $CharId.Speak($Text)
    EndFunc

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

    Func AgentThink($CharId,$Text)
    $CharId.Think($Text)
    EndFunc

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

    Func AgentSetPosition($CharId,$X=-1,$Y=-1)
    If $X=-1 Then $X=@DesktopWidth/2-100
    If $Y=-1 Then $Y=@DesktopHeight/2-100
    $CharId.MoveTo ($X,$Y)
    EndFunc

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

    Func AgentHide($CharId)
    $CharId.Hide()
    EndFunc

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

    Func AgentShutdown($Agent,$CharId)
    $CharId.Hide()
    $CharId.Stop()
    $Agent.Connected = 0
    $Agent = ""
    EndFunc

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

    Func _ende()
    $go=0
    EndFunc

    [/autoit]
  • [FuncSuche] Bereits exestierende Animationen + Sprechfunktion

    • Greek
    • 3. Juli 2009 um 21:16

    Hier ist der Zauberer:

    Spoiler anzeigen
    [autoit]

    HotKeySet("{ESC}","_ende")
    Global $go=1

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

    $Id=AgentStartup()

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

    AgentShow($Id[1])
    AgentSetPosition($Id[1])
    AgentSpeak($Id[1],"Hallo")
    AgentAnimate($Id[1],"Confused")
    AgentThink($Id[1],"Hört der mich??")

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

    Do
    Sleep ( 100 )
    Until $go=0

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

    AgentShutdown($Id[0],$Id[1])

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

    Func AgentStartup($char="merlin.acs")
    Local $result[2]
    $Agent = "Agent.Control.2"
    If IsObj($Agent) Then
    $Agent = ObjGet("",$Agent)
    Else
    $Agent = ObjCreate($Agent)
    EndIf
    $Agent.Connected = 1
    $Agent.Characters.Load ("Rover",@WindowsDir & "\Msagent\Chars\"&$char)
    $A_Chr = $Agent.Characters.Character("rover")
    $result[0]=$Agent
    $result[1]=$A_Chr
    Return $result
    EndFunc

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

    Func AgentShow($CharId)
    $CharId.Show()
    EndFunc

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

    Func AgentAnimate($CharId,$AnimationName)
    $CharId.Play($AnimationName)
    EndFunc

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

    Func AgentSpeak($CharId,$Text)
    $CharId.Speak($Text)
    EndFunc

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

    Func AgentThink($CharId,$Text)
    $CharId.Think($Text)
    EndFunc

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

    Func AgentSetPosition($CharId,$X=-1,$Y=-1)
    If $X=-1 Then $X=@DesktopWidth/2-100
    If $Y=-1 Then $Y=@DesktopHeight/2-100
    $CharId.MoveTo ($X,$Y)
    EndFunc

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

    Func AgentHide($CharId)
    $CharId.Hide()
    EndFunc

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

    Func AgentShutdown($Agent,$CharId)
    $CharId.Hide()
    $CharId.Stop()
    $Agent.Connected = 0
    $Agent = ""
    EndFunc

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

    Func _ende()
    $go=0
    EndFunc

    [/autoit]

    Hier die Liste was du alles machen kannst:
    http://msdn.microsoft.com/en-us/library/ms695930(VS.85).aspx

    Die Funktionen hab ich alle selber mal geschrieben gehabt, es gibt noch mehr hab sie nicht alle übersetzt. ( Hat auch bestimmt schon jemand mal gemacht, deswegen hab ich mir die mühe auch nicht gemacht. )

    Edit:
    Und so lässt du deinen PC reden:

    [autoit]

    Global $voice = ObjCreate("Sapi.SpVoice")

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

    $Ansage="Hello how are you?"

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

    Speak($Ansage, 0.50, 100)

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

    Func Speak($Text, $Rate, $Vol)
    $voice.Rate = $Rate
    $voice.Volume = $Vol
    $voice.Speak ($Text)
    EndFunc;==>Speak

    [/autoit]
  • GDI+ - Bild erstellen und Pixel zeichnen

    • Greek
    • 30. Juni 2009 um 21:39
    Zitat von Deepred

    Hi,

    Danke UEZ für deinen Beispiel. Ok jetzt hab ich es einigermaßen verstanden. Eine Frage noch. Wie kann ich das Bild speichern?

    Der Befehl _GDIPlus_ImageSaveToFile klingt reichlich verdächtig ;)

    Beispiel mit dem Script oben:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GUIConstants.au3>
    #include <GDIPlus.au3>

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

    Global Const $width = 100
    Global Const $height = 100
    Global $graphics, $backbuffer, $bitmap, $Pen, $i, $pi_div_180 = 4 * ATan(1) / 180
    Global $radius_x = ($width * 0.5) * 0.90, $radius_y = ($height * 0.5) * 0.90
    Global $title = "GDI+ Beispiel",$go=0

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

    Opt("GUIOnEventMode", 1)
    $hwnd = GUICreate($title, $width, $height, -1, -1, BitOR($WS_SYSMENU,$WS_DLGFRAME,$WS_POPUP))
    GUISetOnEvent($GUI_EVENT_CLOSE, "close")
    GUISetState()

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

    _GDIPlus_Startup()
    $graphics = _GDIPlus_GraphicsCreateFromHWND($hwnd)
    $bitmap = _GDIPlus_BitmapCreateFromGraphics($width, $height, $graphics)
    $backbuffer = _GDIPlus_ImageGetGraphicsContext($bitmap)
    $pen = _GDIPlus_PenCreate(0xFFFFFFFF, 2)

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

    While $go<>200
    _GDIPlus_GraphicsClear($backbuffer)
    _GDIPlus_GraphicsDrawEllipse($backbuffer, $width * 0.5 + Cos($i * $pi_div_180) * $radius_x, $height * 0.5 + Sin($i * $pi_div_180) * $radius_y, 1, 1, $Pen)
    _GDIPlus_GraphicsDrawImageRect($graphics, $bitmap, 0, 0, $width, $height)
    $i += 1
    $go+= 1
    If $i = 360 Then $i = 0
    Sleep(10)
    WEnd
    _GDIPlus_ImageSaveToFile($bitmap, @ScriptDir&"\Gespeichert.jpg")
    close()

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

    Func close()
    _GDIPlus_PenDispose($pen)
    _GDIPlus_GraphicsDispose($backbuffer)
    _GDIPlus_BitmapDispose($bitmap)
    _GDIPlus_GraphicsDispose($graphics)
    _GDIPlus_Shutdown()
    WinClose($hwnd)
    Exit
    EndFunc

    [/autoit]
  • Bild Problem

    • Greek
    • 30. Juni 2009 um 18:53

    Steht in der Hilfe bei Bemerkungen:

    Zitat

    Wird ein Bild als Hintergrundbild genutzt, während die anderen Steuerelemente dieses quasi überlappen, so ist es wichtig, das Bild-Steuerelement zu deaktivieren und es nach den anderen Steuerelementen zu erstellen: GuiCtrlSetState(-1,$GUI_DISABLE). Dies funktioniert aber nicht mit Tab Steuerelementen, die anders arbeiten. In dem Fall muss man das Bild mit dem Stil $WS_CLIPSIBLINGS erstellen. GuiCtrlSetState(-1,$GUI_ONTOP) ist für die Tab Steuerelemente notwendig.

  • Http header

    • Greek
    • 28. Juni 2009 um 12:09

    Oder mit WinHTTP

    Spoiler anzeigen
    [autoit]

    #include "WinHTTP.au3"

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

    $hw_open = _WinHttpOpen()

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

    $hw_connect = _WinHttpConnect($hw_open, "msdn.microsoft.com")

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

    $h_openRequest = _WinHttpOpenRequest($hw_connect, "GET", "en-us/library/aa384101(VS.85).aspx")

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

    _WinHttpSendRequest($h_openRequest)

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

    _WinHttpReceiveResponse($h_openRequest)

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

    If _WinHttpQueryDataAvailable($h_openRequest) Then
    $header = _WinHttpQueryHeaders($h_openRequest)
    MsgBox(0, "Header", $header)
    EndIf

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

    _WinHttpCloseHandle($h_openRequest)

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

    _WinHttpCloseHandle($hw_connect)

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

    _WinHttpCloseHandle($hw_open)

    [/autoit]

    Includes brauchste noch:

    WinHTTPConstants.au3

    WinHTTP.au3

  • @LastKeyPressed

    • Greek
    • 28. Juni 2009 um 12:05

    Dad da?

    Spoiler anzeigen
    [autoit]

    ;===============================================================================
    ; Function: _GetKeyPressed($iOption)
    ; Description: Returns the keyboard key that was pressed.
    ; Parameter(s): $iOption = 1: Returns ASCII value for the key pressed.
    ; $iOption = 0: Returns Hex value for the key pressed.
    ; $iOption = 2: Returns the character for the key pressed.
    ; Requirement(s): Must include <misc.au3>
    ; Return Value(s): On Success - Returns a character corresponding the keyboard button pressed.
    ; On Failure - -1(No key was pressed) and Set
    ; @ERROR to: 1 - No key was pressed.
    ; Author(s): Chris95219 and The Author of _IsPressed()
    ; Note(s):
    ;
    ;===============================================================================

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

    #include <misc.au3>

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

    Func _GetKeyPressed($iOption = 2)
    For $i = 0 to 255
    if (_IsPressed(Hex($i, 2))) Then
    Select
    Case $iOption = 0
    Return Hex($i)
    Case $iOption = 1
    Return $i
    Case $iOption = 2
    Return Chr($i)
    EndSelect
    EndIf
    Next
    SetError(1)
    Return -1
    EndFunc

    [/autoit]
  • Google-Übersetzer

    • Greek
    • 27. Juni 2009 um 00:44

    Ist ne geile Idee, hab auch mal schnell einen gemacht mit Paketen:

    Spoiler anzeigen
    [autoit]

    #include <WinHTTP.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <ComboConstants.au3>

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

    $MainGUI = GUICreate("Übersetzer von Greek", 522, 341, -1, -1)
    $Absenden = GUICtrlCreateButton("Übersetzen", 416, 288, 97, 41, $WS_GROUP)
    $Eingabetext = GUICtrlCreateEdit("", 8, 32, 249, 233,$ES_MULTILINE)
    $Ergebnis = GUICtrlCreateEdit("", 264, 32, 249, 233,$ES_MULTILINE)
    $Input = GUICtrlCreateLabel("Eingabetext", 80, 8, 94, 22)
    GUICtrlSetFont(-1, 12, 800, 2, "Arial")
    $Output = GUICtrlCreateLabel("Ausgabetext", 344, 8, 100, 22)
    GUICtrlSetFont(-1, 12, 800, 2, "Arial")
    $AutoLabel=GUICtrlCreateLabel("Sprache wird automatisch erkannt", 8, 288, 121, 30)
    $Sprache=GUICtrlCreateCombo("", 264, 288, 121, 19, $CBS_DROPDOWNLIST)
    GUICtrlSetData($Sprache,"Englisch|Französisch|Italienisch")
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Absenden
    _Translate(GUICtrlRead($Sprache),GUICtrlRead($Eingabetext))
    EndSwitch
    WEnd

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

    Func _Translate($Zielssprache,$sText)
    Switch GUICtrlRead($Sprache)
    Case "Englisch"
    $Zielssprache="en"
    Case "Französisch"
    $Zielssprache="fr"
    Case "Italienisch"
    $Zielssprache="it"
    EndSwitch

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

    Local $Ausgangssprache="auto"

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

    $sPost="hl=de&ie=UTF-8&text="&_URIEncode($sText)&"&sl="&$Ausgangssprache&"&tl="&$Zielssprache
    $hw_open = _WinHttpOpen("Übersetzer")
    $hw_connect = _WinHttpConnect($hw_open, "translate.google.de")
    $h_openRequest = _WinHttpOpenRequest($hw_connect,"POST", "/translate_t","HTTP/1.1", "http://translate.google.de/")
    _WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded"& @CRLF, $sPost)
    _WinHttpReceiveResponse($h_openRequest)

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

    Local $data=""
    Do
    $data&=_WinHttpReadData($h_openRequest)
    Until @error
    $result = StringRegExp($data, "id=result_box.*?>(.*?)</div>",3)
    GUICtrlSetData ($Ergebnis,$result[0])

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

    _WinHttpCloseHandle($h_openRequest)
    _WinHttpCloseHandle($hw_connect)
    _WinHttpCloseHandle($hw_open)
    EndFunc

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

    Func _URIEncode($sData)
    ; Prog@ndy
    Local $aData = StringSplit(BinaryToString(StringToBinary($sData, 4), 1), "")
    Local $nChar
    $sData = ""
    For $i = 1 To $aData[0]
    ;~ ConsoleWrite($aData[$i] & @CRLF)
    $nChar = Asc($aData[$i])
    Switch $nChar
    Case 45, 46, 48 - 57, 65 To 90, 95, 97 To 122, 126
    $sData &= $aData[$i]
    Case 32
    $sData &= "+"
    Case Else
    $sData &= "%" & Hex($nChar, 2)
    EndSwitch
    Next
    Return $sData
    EndFunc ;==>_URIEncode

    [/autoit]

    Include gibt es hier:

    Includes

  • Doppelte Namen aussortieren.

    • Greek
    • 23. Juni 2009 um 19:35

    Ah dank dir !

  • Doppelte Namen aussortieren.

    • Greek
    • 23. Juni 2009 um 18:36

    :rolleyes: danke, hab da gestern ewig drangehongen mit allen stringfunktionen...

  • Doppelte Namen aussortieren.

    • Greek
    • 23. Juni 2009 um 18:28

    Hi,

    wie sortiere ich mehrfach enthaltene Namen aus dieser .txt Liste:

    Spoiler anzeigen

    scipio
    Saddle%20Magic
    Flat%20Tire
    DuckyChickenLady
    Macallan
    DuckyChickenLady
    euricomatos
    Flat%20Tire
    euricomatos
    Flat%20Tire
    DuckyChickenLady
    Saddle%20Magic
    Flat%20Tire
    Macallan
    DuckyChickenLady
    Cruncher
    Macallan
    scipio
    Cruncher
    rmccabe916
    Cruncher
    rmccabe916
    Cruncher
    klingoncowboy4
    Cruncher
    euricomatos
    Vukzen
    Vukzen
    Flat%20Tire
    Vukzen
    Cruncher
    euricomatos
    Macallan
    Vukzen
    rmccabe916
    klingoncowboy4
    euricomatos
    Yas
    bontzy
    Cruncher
    Vukzen
    St0le
    Yas
    rmccabe916
    Cruncher
    rmccabe916

  • Losgelassene Maustaste prüfen

    • Greek
    • 22. Juni 2009 um 21:36

    Das geht aber nur wenn die Maus schon über dem GUI gedrückt worden ist, wollte nämlich auch erst $GUI_EVENT_PRIMARYUP empfehlen.

  • Ping Statistik

    • Greek
    • 21. Juni 2009 um 23:18
    Zitat von AutoBert

    Hallo Greek,

    hast du die benötigte rmChart.dll und die von @progandy rmChart.au3 in @Scriptdir liegen?

    mfg (Auto)Bert

    Ah die Dll vergessen :rolleyes:

  • Welchen Internet Browser nutzt ihr - Umfrage ?

    • Greek
    • 21. Juni 2009 um 22:46

    Ich benutz Opera als Standartbrowser,
    Firefox wenn ich die Plugins brauche
    und Safari wenns schnell gehen muss.

  • Ping Statistik

    • Greek
    • 21. Juni 2009 um 22:14

    autoBert:
    Bei mir stürzt AutoIt ab wenn ich das ausführ ?(

  • ClonePicDown/Right

    • Greek
    • 21. Juni 2009 um 20:53

    Hiho,

    angesporen von dem Thread [ offen ] Gdi+ Clone/Save

    Hab ich diese UDF mal gemacht.

    ClonePicDown

    Spoiler anzeigen
    [autoit]

    #include <GDIplus.au3>
    #Include <ScreenCapture.au3>

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

    _ClonePicDown(@DesktopDir&"\Bild2Druck.JPG", @DesktopDir&"\test.jpg")

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

    Func _ClonePicDown($PfadZuBild,$PfadNeuerName)
    ; Greek
    _GDIPlus_Startup()
    $hImg1 = _GDIPlus_ImageLoadFromFile($PfadZuBild)
    $H=_GDIPlus_ImageGetHeight($hImg1)
    $W=_GDIPlus_ImageGetWidth($hImg1)
    $hGDIBitmap = _ScreenCapture_Capture("",0,0,$W,$H*2)
    $hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hGDIBitmap)
    _WinAPI_DeleteObject($hGDIBitmap)
    $hGraphic = _GDIPlus_ImageGetGraphicsContext($hBitmap)

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

    $ImageAttributes = _GDIPlus_ImageAttributesCreate()
    _GDIPlus_GraphicsDrawImageRectRectAttr($hGraphic, $hImg1, 0, 0, $W, $H, 0, 0, $W, $H, 2, $ImageAttributes)
    _GDIPlus_GraphicsDrawImageRectRectAttr($hGraphic, $hImg1, 0, 0, $W, $H, 0, $H, $W, $H, 2, $ImageAttributes)
    _GDIPlus_ImageSaveToFile($hBitmap, $PfadNeuerName)

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

    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_ImageDispose($hImg1)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_ImageAttributesDispose($ImageAttributes)
    _GDIPlus_Shutdown()
    EndFunc

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

    Func _GDIPlus_GraphicsDrawImageRectRectAttr($hGraphics, $hImage, $iSrcX, $iSrcY, $iSrcWidth, $iSrcHeight, $iDstX, $iDstY, $iDstWidth, $iDstHeight, $iUnit = 2, $pImageAttributes=0)
    Local $aResult
    $aResult = DllCall($ghGDIPDll, "int", "GdipDrawImageRectRectI", "ptr", $hGraphics, "ptr", $hImage, "int", $iDstX, "int", _
    $iDstY, "int", $iDstWidth, "int", $iDstHeight, "int", $iSrcX, "int", $iSrcY, "int", $iSrcWidth, "int", _
    $iSrcHeight, "int", $iUnit, "ptr", $pImageAttributes, "ptr", 0, "ptr", 0)
    If @error Then Return SetError(@error, @extended, False)
    Return SetError($aResult[0], 0, $aResult[0] = 0)
    EndFunc ;==>_GDIPlus_GraphicsDrawImageRectRectAttr

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

    Func _GDIPlus_ImageAttributesCreate()
    ; Prog@ndy
    Local $aResult = DllCall($ghGDIpDLL, "int", "GdipCreateImageAttributes", "ptr*", 0)
    If @error Then Return SetError(1,@error,0)
    Return SetError($aResult[0],0,$aResult[1])
    EndFunc

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

    Func _GDIPlus_ImageAttributesDispose($pImageAttributes)
    ; Prog@ndy
    Local $aResult = DllCall($ghGDIpDLL, "int", "GdipDisposeImageAttributes", "ptr", $pImageAttributes)
    If @error Then Return SetError(1,@error,0)
    Return SetError($aResult[0],0,$aResult[0]=0)
    EndFunc

    [/autoit]

    ClonePicRight

    Spoiler anzeigen
    [autoit]

    #include <GDIplus.au3>
    #Include <ScreenCapture.au3>

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

    _ClonePicRight(@DesktopDir&"\Bild2Druck.JPG", @DesktopDir&"\test.jpg")

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

    Func _ClonePicRight($PfadZuBild,$PfadNeuerName)
    ; Greek
    _GDIPlus_Startup()
    $hImg1 = _GDIPlus_ImageLoadFromFile($PfadZuBild)
    $H=_GDIPlus_ImageGetHeight($hImg1)
    $W=_GDIPlus_ImageGetWidth($hImg1)
    $hGDIBitmap = _ScreenCapture_Capture("",0,0,$W*2,$H)
    $hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hGDIBitmap)
    _WinAPI_DeleteObject($hGDIBitmap)
    $hGraphic = _GDIPlus_ImageGetGraphicsContext($hBitmap)

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

    $ImageAttributes = _GDIPlus_ImageAttributesCreate()
    _GDIPlus_GraphicsDrawImageRectRectAttr($hGraphic, $hImg1, 0, 0, $W, $H, 0, 0, $W, $H, 2, $ImageAttributes)
    _GDIPlus_GraphicsDrawImageRectRectAttr($hGraphic, $hImg1, 0, 0, $W, $H, $W, 0, $W, $H, 2, $ImageAttributes)
    _GDIPlus_ImageSaveToFile($hBitmap, $PfadNeuerName)

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

    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_ImageDispose($hImg1)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_ImageAttributesDispose($ImageAttributes)
    _GDIPlus_Shutdown()
    EndFunc

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

    Func _GDIPlus_GraphicsDrawImageRectRectAttr($hGraphics, $hImage, $iSrcX, $iSrcY, $iSrcWidth, $iSrcHeight, $iDstX, $iDstY, $iDstWidth, $iDstHeight, $iUnit = 2, $pImageAttributes=0)
    Local $aResult
    $aResult = DllCall($ghGDIPDll, "int", "GdipDrawImageRectRectI", "ptr", $hGraphics, "ptr", $hImage, "int", $iDstX, "int", _
    $iDstY, "int", $iDstWidth, "int", $iDstHeight, "int", $iSrcX, "int", $iSrcY, "int", $iSrcWidth, "int", _
    $iSrcHeight, "int", $iUnit, "ptr", $pImageAttributes, "ptr", 0, "ptr", 0)
    If @error Then Return SetError(@error, @extended, False)
    Return SetError($aResult[0], 0, $aResult[0] = 0)
    EndFunc ;==>_GDIPlus_GraphicsDrawImageRectRectAttr

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

    Func _GDIPlus_ImageAttributesCreate()
    ; Prog@ndy
    Local $aResult = DllCall($ghGDIpDLL, "int", "GdipCreateImageAttributes", "ptr*", 0)
    If @error Then Return SetError(1,@error,0)
    Return SetError($aResult[0],0,$aResult[1])
    EndFunc

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

    Func _GDIPlus_ImageAttributesDispose($pImageAttributes)
    ; Prog@ndy
    Local $aResult = DllCall($ghGDIpDLL, "int", "GdipDisposeImageAttributes", "ptr", $pImageAttributes)
    If @error Then Return SetError(1,@error,0)
    Return SetError($aResult[0],0,$aResult[0]=0)
    EndFunc

    [/autoit]

    Hab besonders drauf geachtet sie zu schnell wie möglich zu machen.

    Hoffe kann einer brauchen

  • Suche: pee's Programm zum Scripte verkleinern!

    • Greek
    • 21. Juni 2009 um 19:21

    An das Script erinner ich mich auch noch,
    aber war das nicht Xeno?

  • Losgelassene Maustaste prüfen

    • Greek
    • 21. Juni 2009 um 16:36

    Hier ist ne schöne UDF dafür:

    Spoiler anzeigen
    [autoit]

    #include-once

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

    Global Const $WH_MOUSE_LL = 14

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

    Global Const $MOUSE_MOVE_EVENT = 512
    Global Const $MOUSE_PRIMARYDOWN_EVENT = 513
    Global Const $MOUSE_PRIMARYUP_EVENT = 514
    Global Const $MOUSE_SECONDARYDOWN_EVENT = 516
    Global Const $MOUSE_SECONDARYUP_EVENT = 517
    Global Const $MOUSE_WHELLDOWN_EVENT = 519
    Global Const $MOUSE_WHELLUP_EVENT = 520
    Global Const $MOUSE_WHELLSCROLL_EVENT = 522
    Global Const $MOUSE_EXTRABUTTONDOWN_EVENT = 523
    Global Const $MOUSE_EXTRABUTTONUP_EVENT = 524

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

    Global $hKey_Proc = -1
    Global $hM_Module = -1
    Global $hM_Hook = -1
    Global $aMouse_Events[1][1]

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

    Func OnAutoItExit()
    If IsArray($hM_Hook) And $hM_Hook[0] > 0 Then
    DllCall("user32.dll", "int", "UnhookWindowsHookEx", "hwnd", $hM_Hook[0])
    $hM_Hook[0] = 0
    EndIf

    If IsPtr($hKey_Proc) Then
    DllCallbackFree($hKey_Proc)
    $hKey_Proc = 0
    EndIf
    EndFunc

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

    Func _MouseSetOnEvent($iEvent, $sFuncName="", $sParam1="", $sParam2="", $hTargetWnd=0, $iBlockDefProc=1)
    If $sFuncName = "" Then ;Unset Event
    If $aMouse_Events[0][0] < 1 Then Return 0
    Local $aTmp_Mouse_Events[1][1]

    For $i = 1 To $aMouse_Events[0][0]
    If $aMouse_Events[$i][0] <> $iEvent Then
    $aTmp_Mouse_Events[0][0] += 1
    ReDim $aTmp_Mouse_Events[$aTmp_Mouse_Events[0][0]+1][6]
    $aTmp_Mouse_Events[$aTmp_Mouse_Events[0][0]][0] = $aMouse_Events[$i][0]
    $aTmp_Mouse_Events[$aTmp_Mouse_Events[0][0]][1] = $aMouse_Events[$i][1]
    $aTmp_Mouse_Events[$aTmp_Mouse_Events[0][0]][2] = $aMouse_Events[$i][2]
    $aTmp_Mouse_Events[$aTmp_Mouse_Events[0][0]][3] = $aMouse_Events[$i][3]
    $aTmp_Mouse_Events[$aTmp_Mouse_Events[0][0]][4] = $aMouse_Events[$i][4]
    $aTmp_Mouse_Events[$aTmp_Mouse_Events[0][0]][5] = $aMouse_Events[$i][5]
    EndIf
    Next

    $aMouse_Events = $aTmp_Mouse_Events

    If $aMouse_Events[0][0] < 1 Then OnAutoItExit()

    Return 1
    EndIf

    If $aMouse_Events[0][0] < 1 Then
    $hKey_Proc = DllCallbackRegister("_Mouse_Events_Handler", "int", "int;ptr;ptr")
    $hM_Module = DllCall("kernel32.dll", "hwnd", "GetModuleHandle", "ptr", 0)
    $hM_Hook = DllCall("user32.dll", "hwnd", "SetWindowsHookEx", "int", $WH_MOUSE_LL, _
    "ptr", DllCallbackGetPtr($hKey_Proc), "hwnd", $hM_Module[0], "dword", 0)
    EndIf

    $aMouse_Events[0][0] += 1
    ReDim $aMouse_Events[$aMouse_Events[0][0]+1][6]
    $aMouse_Events[$aMouse_Events[0][0]][0] = $iEvent
    $aMouse_Events[$aMouse_Events[0][0]][1] = $sFuncName
    $aMouse_Events[$aMouse_Events[0][0]][2] = $sParam1
    $aMouse_Events[$aMouse_Events[0][0]][3] = $sParam2
    $aMouse_Events[$aMouse_Events[0][0]][4] = $hTargetWnd
    $aMouse_Events[$aMouse_Events[0][0]][5] = $iBlockDefProc
    EndFunc

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

    Func _Mouse_Events_Handler($nCode, $wParam, $lParam)
    Local $iEvent = BitAND($wParam, 0xFFFF)

    If $aMouse_Events[0][0] < 1 Then
    OnAutoItExit()
    Return 0
    EndIf

    For $i = 1 To $aMouse_Events[0][0]
    If $aMouse_Events[$i][0] = $iEvent Then
    If $aMouse_Events[$i][4] <> 0 And Not _IsHoveredWnd($aMouse_Events[$i][4]) Then Return 0 ;Allow default processing
    Local $sExec = "Call($aMouse_Events[$i][1]"

    For $j = 2 To 3
    If $aMouse_Events[$i][$j] <> "" Then $sExec &= ", " & $aMouse_Events[$i][$j]
    Next

    $sExec &= ")"

    $iRet = Execute($sExec)

    If $aMouse_Events[$i][5] = -1 Then Return $iRet
    Return $aMouse_Events[$i][5] ;Block default processing (or not :))
    EndIf
    Next
    EndFunc

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

    Func _IsHoveredWnd($hWnd)
    Local $iRet = False
    Local $aWin_Pos = WinGetPos($hWnd)
    Local $aMouse_Pos = MouseGetPos()

    If $aMouse_Pos[0] >= $aWin_Pos[0] And $aMouse_Pos[0] <= ($aWin_Pos[0] + $aWin_Pos[2]) And _
    $aMouse_Pos[1] >= $aWin_Pos[1] And $aMouse_Pos[1] <= ($aWin_Pos[1] + $aWin_Pos[3]) Then $iRet = True

    Local $aRet = DllCall("user32.dll", "int", "WindowFromPoint", _
    "long", $aMouse_Pos[0], _
    "long", $aMouse_Pos[1])

    If Not WinActive($hWnd) Or ($aRet[0] <> $hWnd And Not $iRet) Then $iRet = False

    Return $iRet
    EndFunc

    [/autoit]

    Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <MouseSetOnEvent_UDF.au3>

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

    HotKeySet ( "{ESC}","_ende" )

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

    _MouseSetOnEvent($MOUSE_PRIMARYUP_EVENT, "_PrimeUp")

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

    Do
    Sleep( 100 )
    Until ""

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

    Func _PrimeUp()
    Run ( "calc.exe")
    EndFunc

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

    Func _ende()
    Exit
    EndFunc

    [/autoit]

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™