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

Beiträge von Skar

  • Phatangeaben Program soll wie Explorer zu Datei fuehren

    • Skar
    • 1. Oktober 2009 um 10:25

    Ich wei- jetyt nicht wo das noch muckt. Case $Button1S Funzt gut. Doch warum wird jetzt die SkriptPathangaben.txt in den Ordner gespeicher wo der Phad liegt? Die Datei existiert in dem Ordner wo die .au3 ist. Also mein Naviigations Datenbank programm xD.


    Spoiler anzeigen
    [autoit]


    Case $Button1S
    $re = FileOpenDialog("Datei öffnen", @DesktopDir, "Alle Dateien (*.*)")
    If @error Then
    MsgBox(16, Default, "FOD", 5)
    EndIf
    GUICtrlSetData($Input1S, $re)
    Case $Button2S
    $Path = GuiCtrlRead($Input1S)
    If FileExists(@ScriptDir & '\SkriptPathangaben.txt') Then
    $file = FileOpen ( "SkriptPathangaben.txt", 1 )
    If $file = -1 Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    FileWrite($file, @CRLF)
    FileWrite($file, $Path )
    FileClose($file)
    Else
    MsgBox(4096,"Warnung" , "SkriptPathangaben.txt does NOT exists")
    EndIf
    msgbox(0, "INFO", "Phad gespeichert")

    [/autoit]


    PS> Hab den Fehler gefunden $file = FileOpen (@ScriptDir & "\SkriptPathangaben.txt", 1 ) so mus es sein.

  • Phatangeaben Program soll wie Explorer zu Datei fuehren

    • Skar
    • 1. Oktober 2009 um 10:09

    Der kleine unscheinbare Tipp @FileOpenDialog@ hat mich zum Ziel gefuert. Danke. Juhu >< Freu


    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>

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

    GUICreate("Phat", 500, 400)

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

    GUICtrlCreateGroup("Datei öffnen", 10, 10, 480, 60)
    $button = GUICtrlCreateButton("Durchsuchen...", 370, 30, 100, 25)
    $input = GUICtrlCreateInput("", 30, 30, 320, 25)
    GUISetState()

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

    While 1
    $msg = GUIGetMsg()

    Switch $msg

    Case $GUI_EVENT_CLOSE
    Exit
    Case $button
    $re = FileOpenDialog("Datei öffnen", @DesktopDir, "Alle Dateien (*.*)")
    If @error Then
    MsgBox(16, Default, "FOD", 5)
    EndIf
    GUICtrlSetData($input, $re)
    EndSwitch

    WEnd

    [/autoit]
  • Phatangeaben Program soll wie Explorer zu Datei fuehren

    • Skar
    • 1. Oktober 2009 um 08:50

    Sowas suche ich. Ich habe keine ahnung wie ich sowas realisieren soll. Viel Programe fragen nach einer Datei x. Dan kan man sich yu der durchhangeln (Durchsuchen) und ok druecken. Sowas moechte ich auch.

  • GUI Zeit Programm läuft seit ddd | hh:mm:ss

    • Skar
    • 18. September 2009 um 11:13

    ^^Lachen ist gesund

  • GUI Zeit Programm läuft seit ddd | hh:mm:ss

    • Skar
    • 17. September 2009 um 10:18

    Ich würde es so machen erstmal nur im kopf

    While 1
    (TimerCode) Bei meiner Lösung ist &TT mit allen Aktuellen Wehrten versorgt.
    Switsch
    Case 1
    Ziehe Aktuelle Daten von &TT mach weiter
    (TimerCode)
    Case 2
    Ziehe Aktuelle Daten von &TT mach weiter
    (TimerCode)
    EndSchwitsch
    Wend

    Denke so geht nicht viel Zeit verloren. Doch am besten ist das eine System Zeit Variable nur für die Sekunden. So verliereste niemals ms.

  • GUI Zeit Programm läuft seit ddd | hh:mm:ss

    • Skar
    • 17. September 2009 um 10:04

    Auch eine Lösung hat ^^


    Spoiler anzeigen
    [autoit]


    Dim $h = 0
    Dim $mm = 0
    Dim $ss = 0
    ;Dim $TTage

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

    While 1
    For $i < 0 to 60 Step 1
    Dim $ss = $i
    If $i < 10 Then
    $TT = $h & ":" & $mm & ":0" & $ss
    MsgBox(48, "Achtung", $TT , 1)
    Else
    $TT = $h & ":" & $mm & ":" & $ss
    MsgBox(48, "Achtung", $TT , 1)
    EndIf
    ; Ich will nicht alles vorwegnehmen. Mach die mm so wie du es haben willst $mm < 10 dann schreibe 01 ....
    ;Sleep 1s (Msg braucht 1s um auzupopen, wenn du Input oder so verwendest empfehler ich Sleep für eine 1s)
    If $i = 59 Then
    $mm = $mm + 1
    Dim $i = 0
    If $mm = 60 Then
    $h = $h + 1
    Dim $mm = 0
    If $h = 24 Then
    Dim $h = 0
    ;Hir rein komt die If für $TTage Kanste fertig machen
    EndIf
    EndIf
    EndIf
    Next
    WEnd

    [/autoit]
  • Ich brauche eine Idee. oder Mehrere

    • Skar
    • 17. September 2009 um 09:20

    Wuahaha man das ist ja sowas von einfach, hatte gestern keine Internet um die Lösung anzugucken. (Rauter ist ausgefallen) Da hab ich mir eine eigene Lösung gebastelt. Die Post ich mal nach dem Motto Machs umständlich wenns auch einfach geht.


    Es wird nach der Windowas auflösung gefragt. Dan wird der Mittelpunkt der Auflösung und meines GUI-Forms berechnet. Das minis gerechnet Fertig.
    Dachte das war ja einfach und dan kommt das "Default" öhhhh. ^^ Danke für den Tipp

    Spoiler anzeigen
    [autoit]


    $size = WinGetClientSize("[active]")
    Dim $H1 = $size[0] / 2 - 531 / 2
    Dim $W1 = $size[1] / 2 - 101 / 2
    $Form1H = GUICreate("Hauptmenü", 531, 101, $H1, $W1)

    [/autoit]


    Andere Frage. Ist es Möglich das man die Gui Forms großer und kleiner Ziehen kann? Wie bei alles Windows Programmen? Cuörser an der rand der Form und Größe verändern. Wenn ja Ist es dan auch noch möglich den Inhalt einer Form so zu verankern das er mit größer oder kleiner wird?
    Ich benutze Koda als FormDesiner. Kan man das dort schon einstellen?

  • Ich brauche eine Idee. oder Mehrere

    • Skar
    • 16. September 2009 um 17:29

    Wie mache ich meine Formen Dynamisch an die Aktuelle Auflösung?

    Zur Zeit starten alle meine Formen auf der Auflösung (x300:y300). Wie bekomme Ich es hin das Jede Form ihren Mittelpunkt berechnet (Könte ich selbst hinbekomen). Und Ein Sub programm Den Mittelpunkt von der Aktuellen Auflösung. Dann sollen Die Mittelpunkte der Form an den Mittelpunkt der Auflösung angepasst werden.

    Hat jemand verstanden was ich will? Wie was brauche ich dazu. Ist es sinnvoll? Es soll ja die Augen schonen.

  • Die 1. Case bleibt nicht stehen wenn sie ausgefürt wurde sondern führt die 2 Case aus! Warum?

    • Skar
    • 16. September 2009 um 15:31

    Wenn ich das Cuntuinecase weglasse dann wird doch der rest nicht ausgeführt richtig? Sagen wir mal ich wollte damit die case beenden doch die aktielle GUI beibehalten.

  • Die 1. Case bleibt nicht stehen wenn sie ausgefürt wurde sondern führt die 2 Case aus! Warum?

    • Skar
    • 16. September 2009 um 15:17

    Das problem Wenn ich auf den Button $Button2IS klicke wird alles nach plan aus gefürht. Das ist gut. Doch dan Wenn die meldung msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.") komt werden die unteren Case $back mit ausgefürt obwohl ich die Nicht gedrückt habe.

  • Die 1. Case bleibt nicht stehen wenn sie ausgefürt wurde sondern führt die 2 Case aus! Warum?

    • Skar
    • 16. September 2009 um 15:07

    Funktion um eine Datenbank zu erweitern. Namen, Typenbezeichnung, und wo diese einsortiert wurden.
    Kein Bot!

    Ich denke das ist ein Bug^^.

    Spoiler anzeigen
    [autoit]


    If FileExists(@ScriptDir & '\Behälter.txt') Then
    Else
    $string4 = "Behälter.txt"
    FileWrite($string4, "Raum2," & @CRLF & "Seratum," & @CRLF & "Eelekroschrott," & @CRLF & "Füllbegölter," & @CRLF & "Trockenraum," & @CRLF & "Schuemer," & @CRLF & "Zusatz," & @CRLF & "SammelstelleR" )

    EndIf
    If FileExists(@ScriptDir & '\Infoanlagen.txt') Then
    Else
    $string5 = "Infoanlagen.txt"
    FileWrite($string5, "Zur reinen Information" )
    Dim $Angelegt = 1
    EndIf
    Dim $Angelegt = 0
    If FileExists(@ScriptDir & '\Find.txt') Then
    Else
    $string6 = "Find.txt"
    FileWrite($string6 , "set %findTypen "& @CRLF & "set %findena "& @CRLF & "set %findenc " & @CRLF & "set %findend " & @CRLF & "set %findene " & @CRLF & "set %findenf " & @CRLF & "set %findeng "& @CRLF & "set %findenh "& @CRLF & "set %findenj " & @CRLF & "set %findeni ")
    Dim $Angelegt = 1
    EndIf
    $string6 = "Find.txt"
    ;***************************************************
    ;******** Sortieren der Typen Items *****************
    #Region ### START Koda GUI section ### Form=c:\dokumente und einstellungen\busch.gaiaakku\desktop\skripte für pergon\sicherung der forms mit koda\form4includesortierenerweitern.kxf
    $Form2IS = GUICreate("Typen erweitern", 359, 233, 193, 125)
    GUISetFont(8, 800, 0, "MS Sans Serif")
    GUISetBkColor(0x316AC5)
    $Label2 = GUICtrlCreateLabel("Item Name: ", 25, 50, 86, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Input1IS = GUICtrlCreateInput("", 120, 50, 200, 21)
    $Input2IS = GUICtrlCreateInput("", 120, 90, 40, 21)

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

    $Label3 = GUICtrlCreateLabel("Typ:", 25, 90, 35, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Label4 = GUICtrlCreateLabel("Ausnahmslos nur 3 Zeichen! Siehe Ettiket", 120, 120, 164, 17)
    $Combo1IS = GUICtrlCreateCombo("Behaelter", 120, 150, 200, 25)
    If FileExists(@ScriptDir & '\Behälter.txt') Then
    $file1T = FileOpen ( "Behälter.txt", 0 )
    If $file1T = -1 Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    $AllLines1T = ""
    While 1
    $line1T = FileReadLine($file1T)
    If @error = -1 Then
    StringTrimRight($AllLines1T, 1)
    ExitLoop
    EndIf
    $AllLines1T &= $line1T &"|"
    Dim $AllLines21T = $AllLines1T
    WEnd
    Else
    MsgBox(4096,"Warnung" , "Behälter.txt does NOT exists")
    EndIf
    GUICtrlSetData($Combo1IS, $AllLines21T)
    $Label5 = GUICtrlCreateLabel("Wohin?", 25, 150, 55, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Back = GUICtrlCreateButton("Back", 120, 180, 80, 25, 0)
    GUICtrlSetCursor (-1, 0)
    $Button2IS = GUICtrlCreateButton("Einfügen", 240, 180, 80, 25, 0)
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_HIDE)
    #EndRegion ### END Koda GUI section ###
    ;******** Sortieren der Typen Ende ******************
    ;***************************************************
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $Button2IS
    MsgBox(64, "","Hier werden neueTypen aufgenommen. " )
    Dim $LB = "Labor"
    Dim $RB = "Raum2"
    Dim $SaB = "Seratum"
    Dim $EB = "Eelekroschrott"
    Dim $FB = "Füllbegölter"
    Dim $TB = "Trockenraum"
    Dim $SB = "Schuemer"
    Dim $ZB = "Zusatz"
    Dim $SoB = "SammelstelleR"
    $NamedesDings = GuiCtrlRead($Input1IS )
    $Typ = GuiCtrlRead($Input2IS )
    $TypG = StringUpper ( $Typ )
    $InhaltCombo1IS = GUICtrlRead ($Combo1IS )
    $FindF = FileOpen ( "Find.txt", 0 )
    If ($FindF = -1) Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    If ( $InhaltCombo1IS == "Behaelter" ) Then
    MsgBox(64, "Hinweiß","Ich weiß nicht wohin ich das schreiben soll!" , 3 )
    ContinueCase
    EndIf
    Dim $Start = 1
    $AllLines1TF = ""
    While 1
    $line1TF = FileReadLine($FindF)
    If (@error = -1) Then
    StringTrimRight($AllLines1TF, 1)
    ExitLoop
    EndIf
    $pruefen = StringInStr ( $line1TF, $TypG , 0 )
    If ( $pruefen <> 0 ) Then
    MsgBox(0, "Hinweiß", "Diser Typ Existiert bereits! Existiert ein Wunsch? Dann wende dich an den Skripter.")
    ContinueCase
    EndIf
    $resultF = StringInStr ( $line1TF, "set %findTypen " )
    ;msgbox(0, "INFO", "hurahiura. "& $resultF & " " & $line1TF )
    If ( $resultF <> 0 ) Then
    Dim $TempF = $line1TF & "_" & $TypG
    $ErsatzF = StringReplace ( $TempF , " _" , " " )
    ;MsgBox(0, "Der neue set %findTypen= ", $ErsatzF)
    $retvalF = _ReplaceStringInFile($string6 , $line1TF, $ErsatzF )
    If ( $retvalF = -1 ) then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    If FileExists(@ScriptDir & '\Find.txt') Then
    $Find = FileOpen ( "Find.txt", 0 )
    If ($Find = -1) Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    $Info = FileOpen ( "Infoanlagen.txt", 1 )
    If ($Info = -1) Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    FileWrite($Info, @CRLF & $InhaltCombo1IS & " enthält " & $NamedesDings & " _" & $TypG)
    FileClose($Info)
    $AllLinesFind = ""
    While 1
    $lineFind = FileReadLine($Find)
    ;MsgBox(0, "Der neue String", $lineFind )
    If @error = -1 Then
    StringTrimRight($AllLinesFind, 1)
    ExitLoop
    EndIf
    ;set %findTypen
    ;MsgBox(0, "Der neue String", $lineFind)
    If ( $LB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findena " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If ($retval = -1) then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $RB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findenc " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If $retval = -1 then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $SaB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findend " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If ($retval = -1) then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $EB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findene " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If $retval = -1 then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $FB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findenf " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If ($retval = -1) then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $TB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findeng " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If $retval = -1 then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $SB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findenh " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If $retval = -1 then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $ZB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findenj " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If ($retval = -1) then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    ContinueCase
    EndIf
    EndIf
    EndIf
    If ( $SoB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findeni " )
    If ( $result <> 0 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    ;MsgBox(0, "Der neue String", $Ersatz)
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )
    If ( $retval = -1 )then
    msgbox(0, "ERROR", "Es konte nicht ersetzt werden in File: " & $string6 & " Error: " & @error)
    exit
    Else
    msgbox(0, "INFO", "Die Datenbank wurde Aktualisiert.")
    FileClose($Find)
    EndIf
    EndIf
    EndIf
    WEnd
    Else
    MsgBox(4096,"Warnung" , "Find.txt.txt does NOT exists")
    EndIf
    EndIf
    EndIf
    WEnd

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

    Case $backC
    GUISetState (@SW_HIDE, $Form3C)
    GUISetState (@SW_SHOW, $einrichten )
    EndSwitch
    WEnd

    [/autoit]
  • Gui inhalt auf ungleiheit überprüfen das dann wenn gleich ein Error ausgibt Wie?

    • Skar
    • 15. September 2009 um 15:08

    Son quatsch. Es funzt so. Hab ja nicht das ganze Skript gepostet. 1k Zeilen ist etwas lang ^^. Ich bekome genau das was ich haben will, Erros gibt es nicht können auch keine entstehen bin mir verdamt sicher^^.

  • Gui inhalt auf ungleiheit überprüfen das dann wenn gleich ein Error ausgibt Wie?

    • Skar
    • 15. September 2009 um 14:45

    Meine Lösund damit nur etwas anders funzt ^^

    Spoiler anzeigen
    [autoit]


    $i = 1
    Dim $p = 0
    While ($i <= 6)
    $i2 = 1
    While ($i2 <= 6)
    IF ( $i == $i2 ) Then
    $i2 = $i2 + 1
    ElseIf ( $i <> $i2 ) Then
    If ($InhaltT[$i] == $InhaltT[$i2]) Then
    Dim $p = 1
    EndIf
    EndIf
    $i2 = $i2+1
    WEnd
    $i = $i+1
    WEnd
    If ($p == 1 ) Then
    MsgBox(48, "Achtung", "Mehrere Funktionen werden mit derselben Taste gestartet!" , 10)
    MsgBox(64, "Hinweiß", "Wählen Sie für jede Funktion eine Taste! Alt, Ctrl oder Shift können sie wählen wie sie wollen." , 10)
    Else

    [/autoit]
  • Mein Problem? Der Code will eine Zeile nicht ersetzen! (Könnt es so verwenden wie es dasteht)

    • Skar
    • 15. September 2009 um 14:40
    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <GUIConstants.au3>
    #include <Array.au3>

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

    #include <File.au3> ;!!!!!!!!!!!!!!!!!!!

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

    If FileExists(@ScriptDir & '\Behälter.txt') Then
    Else
    $string4 = "Behälter.txt"
    FileWrite($string4, "Loot-Beutel" & @CRLF & "Tänke-Beutel" & @CRLF & "Reagenzien" & @CRLF & "Schuppen&Knochen" & @CRLF & "Samen-Beutel" & @CRLF & "Zauberrollen" & @CRLF & "Edelstein-Beutel" & @CRLF & "Fell-Beutel" & @CRLF & "Sonstiges" )

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

    EndIf
    If FileExists(@ScriptDir & '\Infoanlagen.txt') Then
    Else
    $string5 = "Infoanlagen.txt"
    FileWrite($string5, "Zur reinen Information" )
    Dim $Angelegt = 1
    EndIf
    Dim $Angelegt = 0
    If FileExists(@ScriptDir & '\Find.txt') Then
    Else
    $string6 = "Find.txt"
    FileWrite($string6 , "set %findTypen " & @CRLF & "set %findena " & @CRLF & "set %findenc " & @CRLF & "set %findend " & @CRLF & "set %findene " & @CRLF & "set %findenf " & @CRLF & "set %findeng " & @CRLF & "set %findenh " & @CRLF & "set %findeni " & @CRLF & "set %findenj")
    Dim $Angelegt = 1
    EndIf
    $string6 = "Find.txt"

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

    #Region ### START Koda GUI section ### Form=c:\dokumente und einstellungen\busch.gaiaakku\desktop\skripte für pergon\sicherung der forms mit koda\form4includesortierenerweitern.kxf
    $Form2IS = GUICreate("Items erweitern", 359, 233, 193, 125)
    GUISetFont(8, 800, 0, "MS Sans Serif")
    GUISetBkColor(0x316AC5)
    $Label2 = GUICtrlCreateLabel("Item Name: ", 25, 50, 86, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Input1IS = GUICtrlCreateInput("", 120, 50, 200, 21)
    $Input2IS = GUICtrlCreateInput("", 120, 90, 40, 21)

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

    $Label3 = GUICtrlCreateLabel("Typ:", 25, 90, 35, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Label4 = GUICtrlCreateLabel("Ausnahmslos nur 3 Zeichen!", 120, 120, 164, 17)
    $Combo1IS = GUICtrlCreateCombo("", 120, 150, 200, 25)
    If FileExists(@ScriptDir & '\Behälter.txt') Then
    $file1T = FileOpen ( "Behälter.txt", 0 )
    If $file1T = -1 Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    $AllLines1T = ""
    While 1
    $line1T = FileReadLine($file1T)
    If @error = -1 Then
    StringTrimRight($AllLines1T, 1)
    ExitLoop
    EndIf
    $AllLines1T &= $line1T &"|"
    Dim $AllLines21T = $AllLines1T
    WEnd
    Else
    MsgBox(4096,"Warnung" , "Behälter.txt does NOT exists")
    EndIf
    GUICtrlSetData($Combo1IS, $AllLines21T)
    $Label5 = GUICtrlCreateLabel("Wohin?", 25, 150, 55, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Back = GUICtrlCreateButton("Back", 120, 180, 80, 25, 0)
    GUICtrlSetCursor (-1, 0)
    $Button2IS = GUICtrlCreateButton("Einfügen", 240, 180, 80, 25, 0)
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    MsgBox(64, "","Hir werden neue Items in das Skript aufgenommen. Die für alle Chars gelten!" , 3 )

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button2IS
    ;~ "set %findTypen"
    ;~ "set %findena"
    ;~ "set %findenc"
    ;~ "set %findend"
    ;~ "set %findene"
    ;~ "set %findenf"
    ;~ "set %findeng"
    ;~ "set %findenh"
    ;~ "set %findeni"
    ;~ "set %findenj"

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

    Dim $LB = "Loot-Beutel"
    ;~ "Tänke-Beutel"
    ;~ "Reagenzien"
    ;~ "Schuppen&Knochen"
    ;~ "Samen-Beutel"
    ;~ "Zauberrollen"
    ;~ "Edelstein-Beutel"
    ;~ "Fell-Beutel"
    ;~ "Sonstiges"

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

    $Typ = GuiCtrlRead($Input2IS )
    $TypG = StringUpper ( $Typ )
    $InhaltCombo1IS = GUICtrlRead ($Combo1IS )
    If FileExists(@ScriptDir & '\Find.txt') Then
    $Find = FileOpen ( "Find.txt", 0 )
    If $Find = -1 Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf

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

    $AllLinesFind = ""
    While 1
    $lineFind = FileReadLine($Find)
    MsgBox(0, "Der neue String", $lineFind )
    If @error = -1 Then
    StringTrimRight($AllLinesFind, 1)
    ExitLoop
    EndIf
    If ( $LB == $InhaltCombo1IS ) Then
    $result = StringInStr ( $lineFind, "set %findena " )
    If ( $result == 1 ) Then
    Dim $Temp = $lineFind & "_" & $TypG
    $Ersatz = StringReplace ( $Temp , " _" , " " )
    MsgBox(0, "Der neue String", $Ersatz)
    $Find = FileOpen ( "Find.txt", 1 )
    _ReplaceStringInFile($Find , $lineFind, $Ersatz )
    FileClose($Find)
    Exit
    EndIf
    EndIf
    WEnd
    Else
    MsgBox(4096,"Warnung" , "Find.txt.txt does NOT exists")
    EndIf
    EndSwitch
    WEnd

    [/autoit]


    Es soll eine Type zb "ERT" an die Zeile "set %findena" angefügt werden, die sich in der Find.txt befindet.
    Wo ist dr Fehler bin ich zu blöd?

    Hab den Fehler gefunden Phatangabe war inkoreckt.
    $retval = _ReplaceStringInFile($string6 , $lineFind, $Ersatz )


    ^^ Kein Bot. Das ist eine Oberfläche für eine Übersetztung eines Skriptes das mansche funktionen die Autoit hat nicht unterstüzt. Es ist eine Sehr alte Programiersprache^^. mit goto und gosub zb. Man muss immer manuel was eintragen direckt im Skript. Das will ich mit der Oberfläche Benutzerfreundlich machen. ^^ Bot bringt mir nix.

  • Gui inhalt auf ungleiheit überprüfen das dann wenn gleich ein Error ausgibt Wie?

    • Skar
    • 15. September 2009 um 10:38

    Ich gleube ich hab das "#include <Array.au3>" vergessen. Sonst noch was?

    ^^ ich habs poste es Trozdem mal.

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <Array.au3>
    Dim $ComboTaste[7]
    $ComboTaste[1] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[2] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[3] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[4] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[5] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[6] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)

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

    $i = 1
    While ($i <= 6)
    $i2 = 1
    While ($i2 <= 6)
    IF ( $i == $i2 ) Then
    $i2 = $i2 + 1
    ElseIf ( $i <> $i2 ) Then
    If ($InhaltT[$i] == $InhaltT[$i2]) Then
    MsgBox(16, "Warnung",$i & " und " &$i2& " sind gleich mit " & $U & "Belegt", 10)
    ElseIf ($InhaltT[$i] <> $InhaltT[$i2]) Then
    EndIf
    EndIf
    $i2 = $i2+1
    WEnd
    $i = $i+1
    WEnd
    MsgBox(0, "ok", "Alles ok!" , 10)
    Exit

    [/autoit]
  • Gui inhalt auf ungleiheit überprüfen das dann wenn gleich ein Error ausgibt Wie?

    • Skar
    • 15. September 2009 um 10:26

    Das ist ein Snipsel aus einer eigenen Gui. Ich habe 6 Comboboxen. Dort tragt der benutzer 6 Wehrte ein von a-z zb. Alle wehrte müssen ungleich sein. Keine Dopplung wenn doch eine Dopplung autritt soll eine Fehlermeldung kommen. Mein Arry funktioniert nicht mit den Variablen Variabln. Wie wird das richtig gemacht?

    Kann mir einer Helfen?


    Spoiler anzeigen
    [autoit]


    #include <Array.au3>
    Dim $ComboTaste[7]
    $ComboTaste[1] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[2] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[3] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[4] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[5] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)
    $ComboTaste[6] = GUICtrlCreateCombo("F3", 182, 573, 89, 25)

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

    $i = 1

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

    While ($i <= 5)
    Dim $U = $ComboTaste[$i]
    MsgBox(16, "Warnung", $U , 10)
    $i2 = 1
    While ($i2 <= 5)
    Dim $U2 = $ComboTaste.[$i2]
    MsgBox(16, "Warnung", $U2 , 10)
    If ($U == $U2) Then
    MsgBox(16, "Warnung", "Da ist was gleich!" , 10)
    Exit
    EndIf
    WEnd
    WEnd
    Exit

    [/autoit]
  • "Zurück" Buttom Wie geht der?

    • Skar
    • 29. August 2009 um 11:15

    Ich kann nur zustimmen. Hat mir sehr geholfen. :thumbup: Hab sogar eine bessere Strucktur so kennengelernt.

  • "Zurück" Buttom Wie geht der?

    • Skar
    • 28. August 2009 um 20:03

    Ich habe ein eigenes GUI Hauptmenue. Dort Rufe ich ein Untermenue auf. Das hat einen zurück/back buttom. Mit dem will ich zum Hauptmenue gelangen.

    Wie funktioniert so eine Schleife? Was für Funktionen braucht man dafür?

    Quelltext:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>

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

    If FileExists("EUOX.exe") Then
    If FileExists("Menues.euo") Then
    If FileExists("Charsammlung.euo") Then
    ;***************************************************
    ;***************** Haupt Menu **********************
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Hauptmenue", 401, 101, 199, 391)
    GUISetCursor (2)
    GUISetFont(8, 800, 4, "Arnprior")
    GUISetBkColor(0x3D95FF)
    $Label1 = GUICtrlCreateLabel("Willkommen Hauptmenu des EierlegendenVollMichsau^^!", 8, 8, 381, 20)
    GUICtrlSetFont(-1, 10, 800, 4, "Arial")
    $Spielen = GUICtrlCreateButton("Spielen", 15, 50, 100, 30, 0)
    GUICtrlSetFont(-1, 8, 800, 4, "Arial")
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    $Char_anlegen = GUICtrlCreateButton("Char_anlegen", 130, 50, 150, 30, 0)
    GUICtrlSetFont(-1, 8, 800, 4, "Arial")
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    $Skript_Patchen = GUICtrlCreateButton("Skript_Patchen", 290, 50, 100, 30, 0)
    GUICtrlSetFont(-1, 8, 800, 4, "Arial")
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $Skript_Patchen
    ;***************************************************
    ;***************** Skript_Patchen ******************
    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\busch.GAIAAKKU\Desktop\JagtSkript.exe\FormSkriptSpeicherort.kxf
    $Form2 = GUICreate("Skriptspeicherort", 401, 251, 199, 391)
    GUISetCursor (2)
    GUISetFont(8, 400, 0, "Arial")
    GUISetBkColor(0x3D95FF)
    $Label2 = GUICtrlCreateLabel("Hir kommt der Path zu den neuen Skript Quellcode rein.", 8, 16, 383, 20)
    GUICtrlSetFont(-1, 10, 800, 4, "MS Sans Serif")
    $Label1 = GUICtrlCreateLabel("Path:", 8, 60, 56, 28)
    GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")
    $Input1 = GUICtrlCreateInput("", 70, 60, 300, 22)
    GUICtrlSetCursor (-1, 5)
    $Button1 = GUICtrlCreateButton("Speichern", 262, 102, 105, 30)
    GUICtrlSetFont(-1, 8, 800, 4, "Arial")
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    $Label3 = GUICtrlCreateLabel("zB. c:\....\...\(Ver.1.0)J.euo", 72, 88, 132, 18)
    $Combo1 = GUICtrlCreateCombo("", 70, 160, 300, 22)
    If FileExists(@ScriptDir & '\SkriptPathangaben.txt') Then
    $file = FileOpen ( "SkriptPathangaben.txt", 0 )
    If $file = -1 Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    $AllLines = ""
    While 1
    $line = FileReadLine($file)
    If @error = -1 Then
    StringTrimRight($AllLines, 1)
    ExitLoop
    EndIf
    $AllLines &= $line &"|"
    Dim $AllLines2 = $AllLines
    WEnd
    Else
    MsgBox(4096,"Warnung" , "SkriptPathangaben.txt does NOT exists")
    EndIf
    GUICtrlSetData($Combo1, $AllLines2)
    $Label4 = GUICtrlCreateLabel("Alte Versionen einfach Auswählen.", 70, 136, 76, 22)
    GUISetState(@SW_SHOW)
    $Button2 = GUICtrlCreateButton("Speichern", 263, 204, 105, 30)
    GUICtrlSetFont(-1, 8, 800, 4, "Arial")
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    --------------------> $back = GUICtrlCreateButton("Zurück", 71, 206, 105, 30)
    GUICtrlSetFont(-1, 8, 800, 4, "Arial")
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    $Label5 = GUICtrlCreateLabel("Oder:", 8, 112, 52, 28)
    GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $Path = GuiCtrlRead($Input1)
    If FileExists(@ScriptDir & '\SkriptPathangaben.txt') Then
    $file = FileOpen ( "SkriptPathangaben.txt", 1 )
    If $file = -1 Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf
    FileWrite($file, @CRLF)
    FileWrite($file, $Path )
    FileClose($file)
    ;Ab hir ein Code um direckt den Phat beim Button Spielen zu Setzen. + Wo er noch eingesetzt werden soll

    Else
    MsgBox(4096,"Warnung" , "SkriptPathangaben.txt does NOT exists")
    EndIf
    Case $Button2
    $auswahl = GUICtrlRead($Combo1)
    ;Ab hir ein Code um direckt den Phat beim Button Spielen zu Setzen. + Wo er noch eingesetzt werden soll
    ;Case $back
    EndSwitch
    WEnd
    ;******** Skript_Patchen Ende **********************
    ;***************************************************
    ;Case $Char_anlegen
    ;***************************************************
    ;***************** Char_anlegen ********************

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

    (xxxxxxxxxxxxxx)

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • Input Feld überprüfen

    • Skar
    • 28. August 2009 um 19:56

    Raupi vielen dank

    Dein Avatar ist cool

  • Input Feld überprüfen

    • Skar
    • 28. August 2009 um 19:18

    Ich habe ein Input feld in meiner selbs gemachten GUI. Dieses soll überprüft werden auf min 3 buchstaben inclusive leerer Inhalt.

    Doch wie? Welche befehle sind zu verwenden?

    Hir mal der Code haber code für die die danach fragen:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=d:\jagtskript.exe\sicherung der forms mit koda\formcharanlegen.kxf
    $Form1_1 = GUICreate("Menü zum Char Anlegen", 493, 509, 193, 125)
    GUISetBkColor(0x3D95FF)
    $Label1 = GUICtrlCreateLabel("Willkommen bei dem Einstigs-Tool des JagdSkriptes!", 32, 16, 425, 24)
    GUICtrlSetFont(-1, 12, 800, 4, "MS Sans Serif")
    $Label2 = GUICtrlCreateLabel("1. Name:", 32, 70, 65, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Input1 = GUICtrlCreateInput("", 112, 70, 209, 21)
    GUICtrlSetCursor (-1, 5)
    GUISetState(@SW_SHOW)
    $Label3 = GUICtrlCreateLabel("zb. Findecano (keine Titel und Orte)", 112, 104, 173, 17)
    $Label4 = GUICtrlCreateLabel("Nur ein einzigen Teil des Namens Eintragen!", 112, 128, 213, 17)
    $Speichern = GUICtrlCreateButton("Speichern", 400, 432, 75, 25, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()

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

    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $Speichern
    $Name = GuiCtrlRead($Input1 )
    Dim $ifname = "if " & $Name & " in #CHARNAME"
    ;If $Input = "" Then Exit
    ;If InputBox ( "Frage", "Wie ist ihr Name?") = "" Then
    ;If Guictrlread(StringRegExp($Input1," ","")) < 3 Then
    ;StringRegExp()
    ;MsgBox(64,"Achtung! :)", "Sie haben vergessen etwas einzutragen!")
    ;If StringLen(StringReplace($Input1," ","")) < 3 Then
    ;MsgBox(0,"","Kleiner als 3")
    ;If $Input1 = "" Then
    StringRegExpReplace($Input1, '\w', '')
    If @extended < 3 Then

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

    MsgBox(16,"Warnung" , "Es wurde kein Name eingetragen min 3 Zeichen benuzen!", 10 )
    Else
    If FileExists(@ScriptDir & '\Charsammlung.txt') Then
    $file = FileOpen ( "Charsammlung.txt", 1 )

    If $file = -1 Then
    MsgBox(0, "Error", "Kann Datei nicht Öffnen!")
    Exit
    EndIf

    Dim $zu = "{"
    (........)
    EndIf
    EndIf
    Else
    MsgBox(16,"Warnung" , "SkriptPathangaben.txt does NOT exists" , 5)
    EndIf
    EndIf


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

    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/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™