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

Beiträge von Oscar

  • Vordergund mit checkbox

    • Oscar
    • 24. März 2009 um 17:49

    Was willst Du in den Vordergrund holen?
    Ein GUI-Element oder das ganze Fenster?
    Poste mal das ganze Script...

  • WinSetState ohne ganzen Fenstertitel

    • Oscar
    • 23. März 2009 um 16:01

    Das sollte weiterhelfen:

    [autoit]

    Opt('WinTitleMatchMode', 2)

    [/autoit]
  • Feststellen, ob bestimmte Dateien vorhanden sind

    • Oscar
    • 23. März 2009 um 15:40

    Vielleicht meinst Du ja sowas:

    [autoit]


    Global $aFiles[3] = [@WindowsDir & '\explorer.exe', @WindowsDir & '\notepad.exe', @WindowsDir & '\regedit.exe']
    $bCheck = True
    For $i = 0 To UBound($aFiles) - 1
    If Not FileExists($aFiles[$i]) Then $bCheck = False
    Next
    If Not $bCheck Then
    MsgBox(0, 'Fehler', 'Die erforderlichen Dateien sind nicht vollständig vorhanden!')
    Else
    MsgBox(0, 'kein Fehler', 'Alle Dateien vorhanden!')
    EndIf

    [/autoit]
  • µit - März

    • Oscar
    • 23. März 2009 um 15:24

    Für mich war es überraschend festzustellen, dass die unterschiedlichen Schwierigkeitsgrade bei den Sudokus tatsächlich auf unterschiedliche Strategien basieren.
    Ich habe vorher nie ein Sudoku gelöst. Kannte das immer nur vom hörensagen. Ich dachte, man könnte mit einem Algorithmus alle Sudokus lösen. Das dann quasi nur die Zeit variiert.
    Insofern habe ich mit dieser Aufgabe schon wieder was dazugelernt. :D

  • µit - März

    • Oscar
    • 23. März 2009 um 04:07

    Mein Script kann bisher die Aufgaben 1 bis 5 (das sind die einfachen) von Alinas Liste lösen. Ich bin gerade dabei die Strategie für die 6. Aufgabe umzusetzen. :)

  • GuiCtrlCreateX und der Rechtsklick

    • Oscar
    • 22. März 2009 um 16:53

    Schau Dir mal "GUIGetCursorInfo" an.

  • GuiCtrlCreateInput anpassen, dass ausschließlich 4stellige Zahlen akzeptiert werden

    • Oscar
    • 22. März 2009 um 15:20

    $ES_NUMBER befindet sich in:

    [autoit]

    #include <EditConstants.au3>

    [/autoit]
  • Tagesschau-Player - Immer auf dem Laufenden

    • Oscar
    • 22. März 2009 um 10:56

    Also ich habe noch die 9er Version vom WMP und mit der wird Bild und Ton abgespielt.
    Liegt vielleicht eher an einem fehlenden Codec?! :huh:


    P.S.: Ein schönes Projekt! Solltest Du weiter ausbauen. :thumbup:

  • GUIGetMsg() bei GUICtrlCreateEdit

    • Oscar
    • 21. März 2009 um 20:48

    Schau Dir mal GUIRegisterMsg an:

    [autoit]

    GUIRegisterMsg($WM_COMMAND, "MY_WM_COMMAND")

    [/autoit]
  • zip-Datei downloaden und nach C: entpacken

    • Oscar
    • 20. März 2009 um 21:01

    Er meint den Dateinamen!
    Dein ZIP-Archiv heißt "TDC.ZIP" und in Deinem Script verwendest Du "TCP.ZIP".

  • Wie kann ich einen Disconnect verhindern?

    • Oscar
    • 20. März 2009 um 14:43

    Du meinst den disconnect vom Provider, richtig?
    Den kann man nicht umgehen (da von Provider-Seite ausgelöst).
    Musst Du Dir einen anderen Provider suchen oder vielleicht doch mal eine Pause beim spielen einlegen. ;)

  • IniWriteSection

    • Oscar
    • 20. März 2009 um 04:46

    Wozu eigentlich eine Inidatei?

    So kann man die Datei sogar doppelklicken (Playlist):

    Spoiler anzeigen
    [autoit]


    $sPath = 'c:\'
    $hSearch = FileFindFirstFile($sPath & '*.mp3')
    If $hSearch <> -1 Then
    $hDest = FileOpen(@ScriptDir & '\music.m3u', 2)
    If $hDest <> -1 Then
    While True
    $hFile = FileFindNextFile($hSearch)
    If @error Then ExitLoop
    FileWriteLine($hDest, $sPath & $hFile)
    WEnd
    FileClose($hDest)
    EndIf
    FileClose($hSearch)
    EndIf

    [/autoit]
  • Funktion zum Markieren eines Textausschnittes in einem Edit?

    • Oscar
    • 19. März 2009 um 20:17

    Es ist keine gute Idee mehrere Scripte einfach so "zusammenzuklatschen". Du solltest Dich schon bemühen, die fremden Scripte auch zu verstehen, sonst endet das immer in einer "Fehler-Orgie". ;)

    Naja, ich habe Dein Script mal etwas debugt. Und statt der Datei solltest Du für die Einstellungen lieber eine Inidatei nehmen.
    So ist es zwar immer noch etwas chaotisch, aber es funktioniert wenigstens:

    Spoiler anzeigen
    [autoit]


    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiEdit.au3>
    #include <IE.au3>
    #include <ScrollBarConstants.au3>
    #include <WindowsConstants.au3>

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

    Global $iHit = 0, $hInput, $hSearch, $home

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

    _IEErrorHandlerRegister()
    If Not FileExists(@ScriptDir & '\data\settings') Then DirCreate(@ScriptDir & '\data\settings')
    If Not FileExists(@ScriptDir & '\data\settings\home.ini') Then config()
    $home = IniRead(@ScriptDir & '\data\settings\home.ini', 'Settings', 'Home', 'www.google.at')

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

    HotKeySet('^u', '_qcode')
    $ie = _IECreateEmbedded()
    GUICreate("MyBrowser 0.1.0", 640, 580, _
    (@DesktopWidth - 640) / 2, (@DesktopHeight - 580) / 2, _
    $ws_overlappedwindow + $ws_visible + $ws_clipsiblings + $ws_clipchildren)
    $ieobj = GUICtrlCreateObj($ie, 0, 025, 640, 580 - 5 - 20)
    GUICtrlSetResizing($ieobj, 102);guictrlsetresizing($ieobj,$GUI_DOCKAUTO+128+32);guictrlsetresizing($ieobj,2+4+64)
    $ieback = GUICtrlCreateButton("Back", 0, 0, 100, 25)
    $ieforward = GUICtrlCreateButton("Forward", 100, 0, 100, 25)
    $iehome = GUICtrlCreateButton("Home", 200, 0, 100, 25)
    $iestop = GUICtrlCreateButton("Stop", 300, 0, 100, 25)
    $url = GUICtrlCreateInput($home, 400, 0, 580 - 400)
    $urlgo = GUICtrlCreateButton('|>', 580, 0, 20)
    GUICtrlSetResizing($ieback, 2 + 8 + 256 + 512)
    GUICtrlSetResizing($ieforward, 2 + 8 + 256 + 512)
    GUICtrlSetResizing($iehome, 2 + 8 + 256 + 512)
    GUICtrlSetResizing($iestop, 2 + 8 + 256 + 512)
    GUICtrlSetResizing($url, 2 + 8 + 256 + 512)
    GUICtrlSetResizing($urlgo, 2 + 8 + 256 + 512)

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

    GUISetState() ;Show GUI

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

    _IENavigate($ie, $home)

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

    ;#cs ~~~~~ MAIN LOOP START ~~~~~
    ; Waiting for user to close the window
    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit
    Case $iehome
    _IENavigate($ie, $home)
    Case $ieback
    _IEAction($ie, "back")
    Case $ieforward
    _IEAction($ie, "forward")
    Case $iestop
    _IEAction($ie, "stop")
    Case $urlgo
    _IENavigate($ie, GUICtrlRead($url))
    EndSwitch
    WEnd
    ;#ce ~~~~~MAIN LOOP END ~~~~~

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

    GUIDelete()

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

    Exit
    ;#cs ~~~~~ SETTINGS START ~~~~~
    Func config()
    $hConfig = GUICreate('Settings', 250, 95)
    GUICtrlCreateGroup('Main', 5, -1, 240, 55)
    GUICtrlCreateLabel('Bitte geben Sie die gewünschte Startseite ein: ', 10, 10)
    $home = GUICtrlCreateInput('', 10, 25)
    $save = GUICtrlCreateButton('OK', 10, 60, 50)
    $cancel = GUICtrlCreateButton('Cancel', 65, 60, 50)
    GUISetState()
    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE, $cancel
    ExitLoop
    Case $save
    IniWrite(@ScriptDir & '\data\settings\home.ini', 'Settings', 'Home', GUICtrlRead($home))
    ExitLoop
    EndSwitch
    WEnd
    GUIDelete($hConfig)
    EndFunc ;==>config
    ;#ce ~~~~~ SETTINGS END ~~~~~

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

    Func _qcode()
    $sFile = _IEBodyReadHTML($ie)

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

    $hGui = GUICreate('Text suchen', 720, 480)

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

    $hEdit = GUICtrlCreateEdit($sFile, 10, 10, 700, 440, BitOR($GUI_SS_DEFAULT_EDIT, $ES_READONLY))
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    ControlFocus($hGui, '', $hEdit)
    $hInput = GUICtrlCreateInput('Bitte Suchbegriff eingeben!', 10, 455, 638, 20)
    $hSearch = GUICtrlCreateButton('Suchen', 650, 454, 60, 22)
    GUISetState()
    GUIRegisterMsg($WM_COMMAND, 'MY_WM_COMMAND')

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

    While True
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    GUIDelete($hGui)
    ExitLoop
    Case $hSearch
    $sText = GUICtrlRead($hEdit)
    $sSearch = GUICtrlRead($hInput)
    $iHit = StringInStr($sText, $sSearch, 0, 1, $iHit + 1)
    If $iHit > 0 Then
    ControlFocus($hGui, '', $hEdit)
    _GUICtrlEdit_SetSel($hEdit, $iHit - 1, $iHit - 1 + StringLen($sSearch))
    _GUICtrlEdit_Scroll($hEdit, $SB_SCROLLCARET)
    GUICtrlSetData($hSearch, 'Weiter...')
    Else
    Beep(400, 100)
    GUICtrlSetData($hSearch, 'Suchen')
    EndIf
    EndSwitch
    WEnd
    EndFunc ;==>_qcode

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

    Func MY_WM_COMMAND($hWnd, $msg, $wParam, $lParam)
    Local $nNotifyCode = BitShift($wParam, 16)
    Local $nID = BitAND($wParam, 0xFFFF)
    If $nID = $hInput And $nNotifyCode = 256 Then
    GUICtrlSetData($hSearch, 'Suchen')
    GUICtrlSetData($hInput, '')
    $iHit = 0
    EndIf
    Return $GUI_RUNDEFMSG
    EndFunc ;==>MY_WM_COMMAND

    [/autoit]
  • Funktion zum Markieren eines Textausschnittes in einem Edit?

    • Oscar
    • 19. März 2009 um 19:28

    Und Du möchtest das Script mal posten... :whistling:

  • Funktion zum Markieren eines Textausschnittes in einem Edit?

    • Oscar
    • 19. März 2009 um 14:43

    Was heißt das:

    Zitat

    funzt auch net wirlkich


    Beschreibe, was nicht funktioniert und was das Script anders machen soll.

  • Karo einteilung

    • Oscar
    • 18. März 2009 um 12:51

    Ach nee, das mit dem "Buffer" war ja nur zum speichern. Oh mann, ich werde alt... :rolleyes:

    Andy: Bei Dir fehlt die WM_PAINT-Funktion. Sonst wird die Graphic nicht neu gezeichnet, wenn das Fenster von einem anderen Fenster verdeckt und dann wieder sichtbar wird.

  • HotKey + Programmaufruf

    • Oscar
    • 18. März 2009 um 12:33

    Geh' nicht so nah an den Monitor. :rofl:

    Nee, im Ernst, ich kann Dir nicht so ganz folgen. Was meinst Du?

  • Scrollleiste springt bei Guictrlsetdata immer nach Oben

    • Oscar
    • 18. März 2009 um 12:28

    So:

    [autoit]


    $hGui = GUICreate('', 320, 200)
    $hInput = GUICtrlCreateEdit('Alter Text' & @CRLF, 10, 10, 300, 180)
    GUISetState()
    ControlSend($hGui, '', $hInput, '{RIGHT}') ; damit der Eingabecursor am Ende des alten Textes steht
    Guictrlsetdata($hinput, FileRead("C:\Programme\logfile.txt"), 1) ; hier ",1" am Ende
    Do
    Until GUIGetMsg() = -3

    [/autoit]
  • Scrollleiste springt bei Guictrlsetdata immer nach Oben

    • Oscar
    • 18. März 2009 um 12:23

    Der 3. Parameter bei GUICtrlSetData muss ungleich "" sein. Es muss aber einen dritten Parameter geben!

  • Karo einteilung

    • Oscar
    • 18. März 2009 um 12:19

    Ich habe Dir mal ein Beispiel erstellt:

    Spoiler anzeigen
    [autoit]


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

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

    _GDIPlus_Startup()
    $hGUI = GUICreate('GDI+', 400, 400)
    GUISetState()

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

    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics(400, 400, $hGraphic)
    $hGraphicBuff = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    For $y = 0 To 39
    For $x = 0 To 39
    _GDIPlus_GraphicsDrawRect($hGraphicBuff, $x * 10, $y * 10, 10, 10)
    Next
    Next
    _GDIPlus_GraphicsDrawImage($hGraphic, $hBitmap, 0, 0)
    GUIRegisterMsg($WM_PAINT, 'WM_PAINT')

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

    Do
    Until GUIGetMsg() = -3

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

    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_Shutdown()

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

    Func WM_PAINT($hWnd, $Msg, $wParam, $lParam)
    _GDIPlus_GraphicsDrawImage($hGraphic, $hBitmap, 0, 0)
    EndFunc ;==>WM_PAINT

    [/autoit]

    @pee: Das zeichnen mit GDI+ ist nicht ganz ohne, weil man einen zusätzlichen Bitmap-"Buffer" verwenden muss (Danke nochmal an progandy :) ).

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™