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

Beiträge von nuts

  • RegExp Pattern???

    • nuts
    • 5. August 2009 um 13:51

    Na in der Schleife mit Zeile2 anfangen (_Arraydisplay einbauen hilft beim Verständnis).

  • 2te Gui reagiert nicht auf Mausbefehle

    • nuts
    • 4. August 2009 um 13:16

    Ok dann mach mal bitte ein lauffähiges Beispiel mit dem Problem.

  • 2te Gui reagiert nicht auf Mausbefehle

    • nuts
    • 4. August 2009 um 13:02

    Die innere While ... Wend Schleife muss erst wieder verlassen werden, dann gehts weiter in der ersten Schleife (erste GUI reagiert wieder).

  • EinkaufsRechner (ZielGruppe : Hausfrauen) ^^

    • nuts
    • 1. August 2009 um 04:00

    Mit Doppelklick: (wie man einzelne strings löscht siehst du in der WM:Command() Funktion - s.Kommentar)

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListBoxConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <GUIListBox.au3>
    #NoTrayIcon

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

    DirCreate("C:\BS\EK-RECHNER\DB")
    DirCreate("C:\BS\EK-RECHNER\NEU")
    DirCreate("C:\BS\EK-RECHNER\PIC")
    FileInstall("NEU.exe", @ScriptDir & "\NEU.exe")
    FileInstall("Spaghetti.txt", "C:\BS\EK-RECHNER\DB\Spaghetti.txt")
    FileInstall("HackFleisch.txt", "C:\BS\EK-RECHNER\DB\HackFleisch.txt")
    FileInstall("BG.jpg", "C:\BS\EK-RECHNER\PIC\BG.jpg")

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

    $search = FileFindFirstFile("C:\BS\EK-RECHNER\DB" & "\*.*")

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

    While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop
    $F1 = FileOpen("C:\1.txt", 1)
    FileWrite($F1, $file)
    FileClose($F1)
    $file1 = FileRead("C:\1.txt")
    $file2 = StringRegExpReplace($file1, '.txt', "|")
    WEnd

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

    $Form1 = GUICreate("EinkaufsRechner", 400, 345, -1, -1)
    GUISetBkColor(0x000000)
    $List1 = GUICtrlCreateList("", 8, 28, 160, 240)
    GUICtrlSetData(-1, $file2)
    $List2 = GUICtrlCreateList("", 230, 28, 160, 240)
    $hlist2 = GUICtrlGetHandle($List2)
    $Button1 = GUICtrlCreateButton(">", 184, 124, 30, 25, 0)
    $Button2 = GUICtrlCreateButton("Clear", 179, 164, 40, 25, 0)
    $Input1 = GUICtrlCreateInput("Preis Einkauf in €", 230, 270, 160, 25)
    $Button3 = GUICtrlCreateButton("Neuer Artikel", 8, 270, 160, 25, 0)
    $Button4 = GUICtrlCreateButton("Einkauf Speichern", 148, 309, 100, 25, 0)
    $Pic1 = GUICtrlCreatePic("C:\BS\EK-RECHNER\PIC\BG.jpg", 0, 0, 400, 345, BitOR($SS_NOTIFY, $WS_GROUP, $WS_CLIPSIBLINGS, $WS_DISABLED))
    GUICtrlCreateLabel("Artikel", 12, 8)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    GUICtrlCreateLabel("Einkaufs Liste", 234, 8)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    GUISetState(@SW_SHOW)

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

    GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    FileDelete(@ScriptDir & "\NEU.exe")
    FileDelete("C:\1.txt")
    Exit
    Case $Button1
    _1()
    _5()
    Case $Button2
    _2()
    Case $Button3
    _3()
    Case $Button4
    _4()
    EndSwitch
    WEnd

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

    Func _1()
    GUICtrlSetData($List2, GUICtrlRead($List1))
    EndFunc ;==>_1

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

    Func _2()
    GUICtrlSetData($List2, "")
    GUICtrlSetData($input1, "Preis Einkauf in €")
    EndFunc ;==>_2

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

    Func _3()
    ShellExecute(@ScriptDir & "\NEU.exe")
    FileDelete("C:\1.txt")
    Exit
    EndFunc ;==>_3

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

    Func _4()
    Local $lcount = _GUICtrlListBox_GetCount($hlist2)
    Local $open = FileOpen(@DesktopDir & "\EinkaufsZettel " & @MDAY & " . " & @MON & " . " & @YEAR & ".txt", 2) ;den Pfad zum File noch angeben, ggf noch erstellen mit _FileCreate
    For $i = 1 To $lcount
    FileWriteLine($open, _GUICtrlListBox_GetText($hlist2, $i - 1))
    Next
    FileWriteLine($open, GUICtrlRead($Input1))
    FileClose($open)
    EndFunc ;==>_4

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

    Func _5()
    Local $price
    Local $lcount = _GUICtrlListBox_GetCount($hlist2)
    For $i = 1 To $lcount
    Local $open = FileOpen("C:\BS\EK-RECHNER\DB\" & _GUICtrlListBox_GetText($hlist2, $i - 1) & ".txt", 0)
    Local $read = FileReadLine($open, 2)
    FileClose($open)
    $price += StringReplace($read, ",", ".")
    Next
    GUICtrlSetData($Input1, $price & " €")
    EndFunc ;==>_5

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

    Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
    Local $hWndFrom, $iIDFrom, $iCode, $hWndListBox
    If Not IsHWnd($List1) Then $hWndListBox1 = GUICtrlGetHandle($List1)
    If Not IsHWnd($List2) Then $hWndListBox2 = GUICtrlGetHandle($List2)
    $hWndFrom = $ilParam
    $iIDFrom = BitAND($iwParam, 0xFFFF) ; Low Word
    $iCode = BitShift($iwParam, 16) ; Hi Word
    Switch $hWndFrom
    Case $List1, $hWndListBox1
    Switch $iCode
    Case $LBN_DBLCLK
    GUICtrlSetData($List2, GUICtrlRead($List1))
    _5()
    EndSwitch
    Case $List2, $hWndListBox2
    Switch $iCode
    Case $LBN_DBLCLK
    _GUICtrlListBox_DeleteString($hlist2, _GUICtrlListBox_GetCurSel($hlist2)) ;so lassen sich einzelne strings löschen
    _5()
    EndSwitch

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

    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_COMMAND (Bugfix - http://www.autoit.de)

    [/autoit]
  • Suche eine Lösung wie man eine bestimmte Zeile überschreiben kann.

    • nuts
    • 31. Juli 2009 um 22:02

    Worum gehts genau?
    Vielleicht hilft _ReplaceStringInFile?
    Oder _Filelisttoarray & _Filewritefromarray.

  • EinkaufsRechner (ZielGruppe : Hausfrauen) ^^

    • nuts
    • 31. Juli 2009 um 21:20

    Hey,

    kleine konstruktive Kritik zum Aufbau (wenn ich darf):

    1. Ein Textfile für alle Artikel würde es auch tun, der Aufbau wäre dann ca. so:

    Code
    Artikel1|1,99
    Artikel2|2,73 
    usw.


    Mit _Filelisttoarray dann einlesen und ab in die Listbox damit.

    2. Zum Berechnen werden jetzt immer wieder alle Artikel zusammengezählt. Das ist natürlich nicht sehr schnell!
    Man könnte auch den Wert des hinzugekommenden Artikels zum Input addieren.

    3. Es werden immer alle Artikel entfernt? Man könnte noch einen zusätzlichen Button für ausgewählte Artikel hinzufügen.

    4. Hinzufügen / Entfernen per Doppelklick ist vielleicht auch nett.

    So das wars erstmal, bei Fragen zur Umsetzung kannste dich ja melden.

  • Millisekunden Minuten Std !?

    • nuts
    • 31. Juli 2009 um 21:00

    Systemsteuerung / geplante Tasks usw. 8)

  • Millisekunden Minuten Std !?

    • nuts
    • 31. Juli 2009 um 20:39

    Öhm über Autoit? Müsste ich mich auch erst mal schlau machen.
    Gibts wohl auch unterschiede zwischen Xp und Vista?

    Du kannst den Task doch selbst anlegen oder eignet sich das so nicht für deine Zwecke?

  • Millisekunden Minuten Std !?

    • nuts
    • 31. Juli 2009 um 20:16

    Vielleicht einen Task anlegen der das Skript ausführt?

  • ListView auslesen + Inputfeld und anschließend in eine .txt schreiben ?

    • nuts
    • 31. Juli 2009 um 20:15

    Das Fileopen & Fileclose in der ursprünglichen Funktion sollte auch besser außerhalb der for .. next Schleife stehen. ;)

  • ListView auslesen + Inputfeld und anschließend in eine .txt schreiben ?

    • nuts
    • 31. Juli 2009 um 19:00

    Mhm Funktion 5 ist doch schon ganz nah dran.

    [autoit]

    Func _5()
    Local $lcount = _GUICtrlListBox_GetCount($hlist2)
    Local $open = FileOpen("", 2) ;den Pfad zum File noch angeben, ggf noch erstellen mit _FileCreate
    For $i = 1 To $lcount
    FileWriteLine($open,_GUICtrlListBox_GetText($hlist2, $i - 1))
    Next
    FileWriteLine($open,GUICtrlRead($input1)
    FileClose($open)
    EndFunc

    [/autoit]
  • Einer List Box nur dateinamen zuteilen die in einem Ordner sind ?

    • nuts
    • 31. Juli 2009 um 15:20

    Ok damit lässt sich nicht rechnen. Mit Stringreplace kommen wir zum Ziel:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListBoxConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <GUIListBox.au3>
    #NoTrayIcon

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

    $search = FileFindFirstFile(@ScriptDir & "\Neuer Ordner" & "\*.*")

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

    While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop
    $F1 = FileOpen("test.txt", 1)
    FileWrite($F1, $file)
    FileClose($F1)
    $file1 = FileRead("test.txt")
    $file2 = StringRegExpReplace($file1, '.txt', "|")
    WEnd

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

    $Form1 = GUICreate("Form1", 398, 342, 726, 184)
    GUISetBkColor(0x000000)
    $List1 = GUICtrlCreateList("", 8, 8, 160, 240)
    GUICtrlSetData(-1, $file2)
    $List2 = GUICtrlCreateList("", 229, 8, 160, 240)
    $hlist2 = GUICtrlGetHandle($List2)
    $Button1 = GUICtrlCreateButton("+", 184, 104, 30, 25, 0)
    $Button2 = GUICtrlCreateButton("-", 184, 144, 30, 25, 0)
    $Input1 = GUICtrlCreateInput("Preis Einkauf in €", 229, 250, 160, 25)
    $Button3 = GUICtrlCreateButton("Neuer Artikel", 8, 250, 160, 25, 0)
    $Button4 = GUICtrlCreateButton("Druck Einkauf", 148, 304, 100, 25, 0)
    $Pic1 = GUICtrlCreatePic("BG.jpg", 0, 0, 396, 340, BitOR($SS_NOTIFY, $WS_GROUP, $WS_CLIPSIBLINGS, $WS_DISABLED))
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    FileDelete("test.txt")
    Exit
    Case $Button1
    _1()
    Case $Button2
    _2()
    Case $Button4
    _3()
    EndSwitch
    WEnd

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

    Func _1()
    GUICtrlSetData($List2, GUICtrlRead($List1))
    EndFunc ;==>_1

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

    Func _2()
    GUICtrlSetData($List2, "")
    EndFunc ;==>_2

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

    Func _3()
    Local $price
    Local $lcount = _GUICtrlListBox_GetCount($hlist2)
    For $i = 1 To $lcount
    Local $open = FileOpen(@ScriptDir & "\Neuer Ordner\" & _GUICtrlListBox_GetText($hlist2, $i - 1) & ".txt", 0)
    Local $read = FileReadLine($open, 2)

    $price += StringReplace($read, ",", ".")
    FileClose($open)
    Next
    GUICtrlSetData($Input1, $price)
    $price = ""
    EndFunc ;==>_3

    [/autoit]
  • Einer List Box nur dateinamen zuteilen die in einem Ordner sind ?

    • nuts
    • 31. Juli 2009 um 15:13

    Das kommt auf das Ausgangsformat an :D
    Poste doch mal den relevanten Teil der .txt Datei.

  • Einer List Box nur dateinamen zuteilen die in einem Ordner sind ?

    • nuts
    • 31. Juli 2009 um 14:19

    Achwas das wird schon ;)

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListBoxConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <GUIListBox.au3>
    #NoTrayIcon

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

    $search = FileFindFirstFile(@ScriptDir & "\Neuer Ordner" & "\*.*")

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

    While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop
    $F1 = FileOpen("test.txt", 1)
    FileWrite($F1, $file)
    FileClose($F1)
    $file1 = FileRead("test.txt")
    $file2 = StringRegExpReplace($file1, '.txt', "|")
    WEnd

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

    $Form1 = GUICreate("Form1", 398, 342, 726, 184)
    GUISetBkColor(0x000000)
    $List1 = GUICtrlCreateList("", 8, 8, 160, 240)
    GUICtrlSetData(-1, $file2)
    $List2 = GUICtrlCreateList("", 229, 8, 160, 240)
    $hlist2 = GUICtrlGetHandle($List2)
    $Button1 = GUICtrlCreateButton("+", 184, 104, 30, 25, 0)
    $Button2 = GUICtrlCreateButton("-", 184, 144, 30, 25, 0)
    $Input1 = GUICtrlCreateInput("Preis Einkauf in €", 229, 250, 160, 25)
    $Button3 = GUICtrlCreateButton("Neuer Artikel", 8, 250, 160, 25, 0)
    $Button4 = GUICtrlCreateButton("Druck Einkauf", 148, 304, 100, 25, 0)
    $Pic1 = GUICtrlCreatePic("BG.jpg", 0, 0, 396, 340, BitOR($SS_NOTIFY, $WS_GROUP, $WS_CLIPSIBLINGS, $WS_DISABLED))
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    FileDelete("test.txt")
    Exit
    Case $Button1
    _1()
    Case $Button2
    _2()
    Case $Button4
    _3()
    EndSwitch
    WEnd

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

    Func _1()
    GUICtrlSetData($List2, GUICtrlRead($List1))
    EndFunc ;==>_1

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

    Func _2()
    GUICtrlSetData($List2, "")
    EndFunc ;==>_2

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

    Func _3()
    Local $price
    Local $lcount = _GUICtrlListBox_GetCount($hlist2)
    For $i = 1 To $lcount
    Local $open = FileOpen(@ScriptDir & "\Neuer Ordner\" & _GUICtrlListBox_GetText($hlist2, $i - 1) & ".txt", 0)
    Local $read = FileReadLine($open, 2)
    $price += $read
    FileClose($open)
    Next
    GUICtrlSetData($Input1, $price)
    $preis = ""
    EndFunc ;==>_3

    [/autoit]


    So oder?

    Edit \ Funktioniert jetzt natürlich nur wenn eine Zahl in Zeile2 der .txt Datei steht.
    Sollte dort 2,50€ oder sowas stehen muss man eben noch aufs richtige Format umwandlen.

  • Combobox mit Button verknüpfen

    • nuts
    • 30. Juli 2009 um 23:38
    Zitat von Nischlas
    [autoit]

    #include <GUIConstants.au3>

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

    $Form_Mstsc = GUICreate("Remotedesktop Tool", 364, 36, -1, -1)
    $Button_GO = GUICtrlCreateButton("GO", 304, 8, 49, 22, 0)
    $Combo_Auswahl = GUICtrlCreateCombo("Bitte eine Auswahl treffen" , 8, 8, 289, 25)
    GUICtrlSetData(-1, "Remote Root|Remote PC", "item3")
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button_GO
    If GUICtrlRead($Combo_Auswahl) = "Was du eben abfragen willst" then ;die gewünschte Funktion z.B. Run(...)
    EndSwitch
    WEnd

    [/autoit]
    Alles anzeigen


    GUICtrlRead ist dein Freund. 8)

  • Button mit IMage belegen

    • nuts
    • 30. Juli 2009 um 23:33

    Laut Hilfe nur bitmaps und icons. Ich glaube aber .gif gehen auch, probiers einfach aus ;)

  • Button mit IMage belegen

    • nuts
    • 30. Juli 2009 um 22:46
    [autoit]

    GUICtrlSetImage

    [/autoit]

    sollte dir weiterhelfen.

    Die Hinweise aus der Hilfe musst du natürlich beachten.

    "Opt('MustDeclareVars',1)" muss nicht verwendet werden.

  • While , IF Problem

    • nuts
    • 30. Juli 2009 um 15:53

    Irgendwo wird dann die while wend Schleife nichtmehr verlassen.
    Hilft ein Exitloop zwischen Zeile 72 und 73?

  • .flv zu .avi Converten ? möglich ?

    • nuts
    • 30. Juli 2009 um 15:23

    Versuch doch mal die Directshow UDF. Ein Directshow Player in Autoit wäre cool.

    Ansonsten funktioniert die Methode von chrisatack ja, glaube dazu habe ich daheim auch ein Beispiel.

  • Label , Veränderbare Daten Plus Rechnen

    • nuts
    • 30. Juli 2009 um 15:19

    Sorry aber das ist völlig unverständlich (Skript & Problemstellung).

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™