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

Beiträge von autoBert

  • [Hilfe] Start und Stop Button

    • autoBert
    • 24. Mai 2010 um 01:20
    Zitat von Jonathan

    Ich kenne ihn zuwenig, es kann auch sein, das er einfach nur was lernen will, dann wäre es doof, wenn cih ihm nicht helfen würde.


    Deshalb schaue ich mir bei solchen Posts in der Regel die bisherigen Beiträge an. Bei Volle gleich der 1. eröffnete Thread ein Volltreffer:

    Zitat von volle

    ich brauchte keine hilfe beim hack ^^
    ich habe ja bei der hilfe der gui gefragt :)
    und nichts weiter^^
    also regt euch mal ab :wacko:

    deshalb von peethebee geschlossen. Auch in diesem Thread ging es um das Umschalten eines Zustandes (in diesem Fall Kontrolllampe, aber der Eröffnungspost wurde editiert, könnte also auch die gleiche Frage wie hier gewesen sein). Nachdem er auch ControlSend schon erklärt bekommen hat, steht ja jetzt seinem BOT nichts mehr im Wege,

    mfg (Auto)Bert

  • [Hilfe] Start und Stop Button

    • autoBert
    • 24. Mai 2010 um 00:42
    Zitat von Jonathan

    es wird zu 99% einer

    Und wegen dem 1 fehlendem Prozentpunkt unterstützt du sowas :?:
    Wenn er die SuFu richtig nutzen würde, könnte er die Lösung selbst finden :!:

    mfg (Auto)Bert

  • [Beispiel] Textbausteine verwalten (kleines Update)

    • autoBert
    • 24. Mai 2010 um 00:19
    Zitat von Fabian

    Sehr schön :)

    Ps: Bei der Drop-Box heisst es "Textbaustein auswählen"

    Edit:

    Der Name der .exe Datei hat den selben Schreibfehler wie in der Drop-Box.
    Mir ist noch aufgefallen, dass Text mit Zeilenumbruch und Enter nach der Speicherung nicht mehr richtig dargestellt wird.

    Ich ersetze die Zeilenumbrüche mit Tab, da es sonst Probleme in der INI-Datei gibt. Bin am Überlegen ob ich die Textbausteine aus der INI nehme und als echte Textdateien speichere, dann wäre das Problem gelöst. So muss man halt seine Text evtl. noch nachformatieren, aber immer noch besser als es immer von Hand einzugeben. Die Schreibfehler werden beim nächsten Update korrigiert (Meine "U-Taste" verweigert leider sehr oft den Dienst)

    Edit: Skript in Post #1 ausgetauscht: @CRLF, @CR und @LF bleiben jetzt erhalten und hoffentlich habe ich auch alle fehlenden U's gefunden,

    mfg (Auto)Bert

  • Bräuchte mal wieder hilfe bei Main Menu aus einer ini laden

    • autoBert
    • 23. Mai 2010 um 23:43

    Hallo sirocool,

    du kannst es so machen:

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.6.1
    Author: myName

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

    Script Function:
    Template AutoIt script.

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

    #ce ----------------------------------------------------------------------------

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

    ; Script Start - Add your code below here

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

    $INI = @ScriptDir & "\tab.ini"

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

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

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 318, 126, 192, 124)
    $Menu = IniReadSectionNames ($INI)
    Dim $MenuItem[$Menu[0]]
    _ArrayDisplay($Menu)
    $Tabmenu = $Menu[1]
    For $1 = 1 To $Menu[0]
    $MenuItem[$1-1] = GUICtrlCreateMenu($Menu[$1])
    _CreateSub($MenuItem[$1-1],$Menu[$1])
    Next
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $1
    MsgBox(16,"test","dies ist ein test")
    Case $1+1
    MsgBox(16,"test","dies ist ein test 2")
    case Else
    if $nMsg > $1 then MsgBox(16,"test","dies ist ein test " & $nMsg) ;zum austesten welche ID das Item hat
    EndSwitch
    WEnd

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

    Func _CreateSub($idMenu,$sName)
    $Sub =IniReadSection($INI,$sName)
    _ArrayDisplay($Sub)
    for $2 = 1 to $Sub[0][0]
    GUICtrlCreateMenuItem($Sub[$2][1],$idMenu)
    Next
    EndFunc

    [/autoit]

    Edit: Skript ausgetauscht

    mfg (Auto)Bert

  • [Beispiel] Textbausteine verwalten (kleines Update)

    • autoBert
    • 23. Mai 2010 um 21:49

    Sorry, Skript eingefügt,

    mfg (Auuto)Bert

  • [Beispiel] Textbausteine verwalten (kleines Update)

    • autoBert
    • 23. Mai 2010 um 21:43

    Hier ein kleines Skript für Vielschreiber: [spoiler_OnEvent-Modus]

    [autoit]

    #region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_outfile=TextBausteine.exe
    #AutoIt3Wrapper_Compression=4
    #endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include<WindowsConstants.au3>
    #include <GuiComboBox.au3>

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

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.6.1
    Author: AutoBert: http://www.autoit.de/index.php?page…4445#post164445

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

    Skriptbeispiel für den Umgang mit INI-Files und ComboBox und Edit
    #ce ----------------------------------------------------------------------------

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

    Opt('GUIOnEventMode', 1)

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

    Const $sElect = "Textbaustein auswählen"
    Global $sTB, $sIni = @ScriptDir & "\TextBausteine.ini"

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

    If Not FileExists($sIni) Then ;Ini-File vorbelegen
    $sData = "Hilfe=Hier kannst du dir die Hilfe herunterladen." & @CRLF
    $sData &= "Tutorial=Hier gibt es ein Tutorial: http://wiki.autoit.de/wiki/index.php/Tutorial" & @CRLF
    $sData &= "richtigPosten=Autoit-Anfänger Guide / Wie poste ich richtig??" & @CRLF
    $sData &= "Buch peethebee=Sehr hilfreich ist auch das Buch von @peethebee"
    IniWriteSection($sIni, "Bausteine", $sData)
    EndIf

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

    Global $sTitel = 'Beispiel für wiederkehrende Textbausteine'

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

    Local $hMainGui = GUICreate($sTitel, 800, 520, 140, 150, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX))
    ;erzeugt eine GUI die zurückgebebene ID wird in der Variablen $hMainGui gespeichert
    ;die GUI hat BOXen für Mininmieren, Maximieren und ist in der Größe frei änderbar
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    ;Verknüpft dem Event $Gui_Event_Close mit der Funktion _End

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

    Global $hedtBox = GUICtrlCreateEdit("", 10, 10, 600, 480, BitOR($ES_WANTRETURN, $ES_MULTILINE))
    ;erzeugt ein Edit Steuerelement die zurückgegebe ID wird in der Variablen $hedtBox gespeichert
    GUICtrlSetResizing(-1, $GUI_DOCKBORDERs)
    ;verankert das Inputfield an allen Seiten
    ;beim Resizen bleibt es dadurch auf seiner Position und den Abstand zu den Seiten es ändert lediglich Breite und Höhe

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

    Global $hcboTB = GUICtrlCreateCombo("", 620, 10, 150, 25)
    GUICtrlSetOnEvent(-1, 'show_Selection')
    ;Verknüpft die Combo (Auswahl) mit der Funktion show_Selection
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    GUICtrlCreateButton("&Hinzufügen Textbaustein", 620, 40, 150, 25)
    GUICtrlSetOnEvent(-1, '_addTB')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    GUICtrlCreateButton("&Löschen Textbaustein", 620, 70, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    GUICtrlSetOnEvent(-1, '_delTB')
    GUICtrlCreateButton("Änderungen &speichern", 620, 100, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    GUICtrlSetOnEvent(-1, '_saveTB')
    GUICtrlCreateButton("&ins ClipBoard", 620, 150, 150, 25)
    GUICtrlSetOnEvent(-1, '_ClipPut')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    GUICtrlCreateButton("&aus ClipBoard", 620, 180, 150, 25)
    GUICtrlSetOnEvent(-1, '_ClipGet')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    $hbtnClear = GUICtrlCreateButton("&Neu (leere EditBox)", 620, 210, 150, 25)
    GUICtrlSetOnEvent(-1, '_Clear')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)

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

    GUICtrlCreateButton('Be&enden', 620, 260, 150, 25)
    GUICtrlSetOnEvent(-1, '_END')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM)

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

    read_INI()
    GUISetState()

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

    While 1
    Sleep(1000)
    WEnd

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

    Func _End()
    GUIDelete($hMainGui)
    Exit
    EndFunc ;==>_End

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

    Func read_INI() ;Ini einlesen
    $list1 = IniReadSection($sIni, "Bausteine")
    If IsArray($list1) Then ;nur wenn Array da ansonsten Absturz
    For $i = 1 To $list1[0][0] ;von 1 bis zum letzen Eintrag im Array
    GUICtrlSetData($hcboTB, $list1[$i][0]) ;in ComboBox eintragen
    Next
    EndIf
    _GUICtrlComboBox_InsertString($hcboTB, $sElect, 0) ;$sElect (= "Textbaustein auswählen") an erster Stelle einfügen
    _GUICtrlComboBox_SetCurSel($hcboTB, 0) ;1 Eintrag selektieren
    EndFunc ;==>read_INI

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

    Func _addTB() ;Textbaustein hinzfüren
    $write1 = GUICtrlRead($hedtBox)
    If $write1 <> "" Then ;nur wenn im Edit etwas eingetragen
    $write2 = InputBox("Baustein verwalten unter", "Bitte Kurzbegriff eingeben")
    If $write2 <> "" Then ;nur wenn ein Kurzbegrigg eingegeben
    _writeTB($write2) ;Routine zum schreiben aufrufen
    GUICtrlSetData($hcboTB, $write2, $write2) ;in ComboBox eintragen und gleichzeitig selektieren
    EndIf
    EndIf
    show_Selection() ;Routine die die Selektion zeigt aufrufen
    EndFunc ;==>_addTB

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

    Func _writeTB($sId_TB) ;Routine zum Screiben in INI
    ;hier werdeb die Zeichen @CR (Wagebrücklauf) @LF Zeilenumbruche und @CRLF getauscht
    $write1 = GUICtrlRead($hedtBox)
    $write1 = StringReplace($write1, @CRLF, "_%CRLF%_")
    $write1 = StringReplace($write1, @CR, "_%CR%_")
    $write1 = StringReplace($write1, @LF, "_%LF%_")
    If $write1 <> "" Then IniWrite($sIni, "Bausteine", $sId_TB, $write1) ;wenn nicht leer in INI schreien
    EndFunc ;==>_writeTB

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

    Func _saveTB() ;Änderungen speichern
    If GUICtrlRead($hcboTB) = $sElect Then
    ;es ist kein Textbaustein selektiert
    GUICtrlSetState($hbtnClear, $GUI_DISABLE)
    GUICtrlSetData($hedtBox, "")
    _addTB() ;
    Else
    $sId_TB = GUICtrlRead($hcboTB) ;Kurzbezeichnung holen
    _writeTB($sId_TB) ;Routine zum Schreiben aufrufen
    EndIf
    EndFunc ;==>_saveTB

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

    Func _delTB() ;Textbaustein löschen
    $sDel = GUICtrlRead($hcboTB) ;Kurzbezeichnung holen
    IniDelete($sIni, "Bausteine", $sDel) ;aus INI löschen
    GUICtrlSetData($hcboTB, "") ;ComboBox leeren
    read_INI() ;Routine zum INI einlesen aufrufen
    show_Selection() ;Routine zum anzeigen der Selektion aufrufen
    EndFunc ;==>_delTB

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

    Func _ClipPut() ;Daten ins Clipboard
    ClipPut(GUICtrlRead($hedtBox))
    EndFunc ;==>_ClipPut

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

    Func _ClipGet() ;Daten aus Clipboard holen EditBox wird mit Clipboard überschrieben
    GUICtrlSetData($hedtBox, ClipGet())
    EndFunc ;==>_ClipGet

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

    Func show_Selection() ;Selekzion anzeigen
    If GUICtrlRead($hcboTB) = $sElect Then ;es ist kein Textbaustein asgewählt
    GUICtrlSetState($hbtnClear, $GUI_DISABLE) ;Leeren-Button disablen
    GUICtrlSetData($hedtBox, "") ;also EDIT leeren
    Else
    GUICtrlSetState($hbtnClear, $GUI_ENABLE) ;Leeren-Button enablen
    $sId_TB = GUICtrlRead($hcboTB) ;Kurzbezeichnng holen
    ;ConsoleWrite("ausgewählt: " & $sId_TB & @CRLF) ;Kontrolausgabe in Console
    $write1 = IniRead($sIni, "Bausteine", $sId_TB, "") ;Baustein aus INI lesen
    ;hier werdeb die Zeichen für @CR (Wagebrücklauf) @LF Zeilenumbruche und @CRLF zurück getauscht
    $write1 = StringReplace($write1, "_%CRLF%_", @CRLF) ;
    $write1 = StringReplace($write1, "_%CR%_", @CR)
    $write1 = StringReplace($write1, "_%LF%_", @LF)

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

    GUICtrlSetData($hedtBox, $write1) ;Baustein in Edit-Box anzeigen
    EndIf
    EndFunc ;==>show_Selection

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

    Func _Clear()
    GUICtrlSetData($hcboTB, $sElect, $sElect)
    show_Selection()
    EndFunc ;==>_Clear

    [/autoit]

    [/spoiler]

    GuiGetMsg-Modus
    [autoit]

    #region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_outfile=TextBausteine.exe
    #AutoIt3Wrapper_Compression=4
    #endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include<WindowsConstants.au3>
    #include <GuiComboBox.au3>

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

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.6.1
    Author: AutoBert: http://www.autoit.de/index.php?page…4445#post164445

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

    Skriptbeispiel für den Umgang mit INI-Files und ComboBox und Edit
    #ce ----------------------------------------------------------------------------

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

    Const $sElect = "Textbaustein auswählen"
    Global $sTB, $sIni = @ScriptDir & "\TextBausteine.ini"

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

    If Not FileExists($sIni) Then ;Ini-File vorbelegen
    $sData = "Hilfe=Hier kannst du dir die Hilfe herunterladen." & @CRLF
    $sData &= "Tutorial=Hier gibt es ein Tutorial: http://wiki.autoit.de/wiki/index.php/Tutorial" & @CRLF
    $sData &= "richtigPosten=Autoit-Anfänger Guide / Wie poste ich richtig??" & @CRLF
    $sData &= "Buch peethebee=Sehr hilfreich ist auch das Buch von @peethebee"
    IniWriteSection($sIni, "Bausteine", $sData)
    EndIf

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

    Global $sTitel = 'Beispiel für wiederkehrende Textbausteine'

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

    Local $hMainGui = GUICreate($sTitel, 800, 520, 140, 150, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX))
    ;erzeugt eine GUI die zurückgebebene ID wird in der Variablen $hMainGui gespeichert
    ;die GUI hat BOXen für Mininmieren, Maximieren und ist in der Größe frei änderbar

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

    Global $hedtBox = GUICtrlCreateEdit("", 10, 10, 600, 480, BitOR($ES_WANTRETURN, $ES_MULTILINE))
    ;erzeugt ein Edit Steuerelement die zurückgegebe ID wird in der Variablen $hedtBox gespeichert
    GUICtrlSetResizing(-1, $GUI_DOCKBORDERs)
    ;verankert das Inputfield an allen Seiten
    ;beim Resizen bleibt es dadurch auf seiner Position und den Abstand zu den Seiten es ändert lediglich Breite und Höhe

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

    Global $hcboTB = GUICtrlCreateCombo("", 620, 10, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    $hbtnAdd = GUICtrlCreateButton("&Hinzufügen Textbaustein", 620, 40, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    $hbtnDel = GUICtrlCreateButton("&Löschen Textbaustein", 620, 70, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    $hbtnSave = GUICtrlCreateButton("Änderungen &speichern", 620, 100, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    $hbtnToClip = GUICtrlCreateButton("&ins ClipBoard", 620, 150, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    $hbtnFromClip = GUICtrlCreateButton("&aus ClipBoard", 620, 180, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    $hbtnClear = GUICtrlCreateButton("&Neu (leere EditBox)", 620, 210, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)

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

    $hbtnExit = GUICtrlCreateButton('Be&enden', 620, 260, 150, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM)

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

    read_INI()
    GUISetState()

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE, $hbtnExit
    GUIDelete($hMainGui)
    Exit
    Case $hcboTB ;ComboBoxauswahl wurde geändert
    show_Selection()
    Case $hbtnAdd ;Hinzufügen Textbaustein"
    _addTB()
    Case $hbtnDel ;"&Löschen Textbaustein"
    $sDel = GUICtrlRead($hcboTB) ;Kurzbezeichnung holen
    IniDelete($sIni, "Bausteine", $sDel) ;aus INI löschen
    GUICtrlSetData($hcboTB, "") ;ComboBox leeren
    read_INI() ;Routine zum INI einlesen aufrufen
    show_Selection() ;Routine zum anzeigen der Selektion aufrufen
    Case $hbtnSave ;"Änderungen &speichern"
    If GUICtrlRead($hcboTB) = $sElect Then
    ;es ist kein Textbaustein selektiert
    GUICtrlSetState($hbtnClear, $GUI_DISABLE)
    GUICtrlSetData($hedtBox, "")
    _addTB() ;
    Else
    $sId_TB = GUICtrlRead($hcboTB) ;Kurzbezeichnung holen
    _writeTB($sId_TB) ;Routine zum Schreiben aufrufen
    EndIf
    Case $hbtnToClip ;"&ins ClipBoard"
    ClipPut(GUICtrlRead($hedtBox))
    Case $hbtnFromClip ;"&aus ClipBoard"
    ;Daten aus Clipboard holen EditBox wird mit Clipboard überschrieben
    GUICtrlSetData($hedtBox, ClipGet())
    Case $hbtnClear ;"&Neu (leere EditBox)"
    GUICtrlSetData($hcboTB, $sElect,$sElect)
    show_Selection() ;Routine zum anzeigen der Selektion aufrufen
    EndSwitch
    WEnd

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

    Func read_INI() ;Ini einlesen
    $list1 = IniReadSection($sIni, "Bausteine")
    If IsArray($list1) Then ;nur wenn Array da ansonsten Absturz
    For $i = 1 To $list1[0][0] ;von 1 bis zum letzen Eintrag im Array
    GUICtrlSetData($hcboTB, $list1[$i][0]) ;in ComboBox eintragen
    Next
    EndIf
    _GUICtrlComboBox_InsertString($hcboTB, $sElect, 0) ;$sElect (= "Textbaustein auswählen") an erster Stelle einfügen
    _GUICtrlComboBox_SetCurSel($hcboTB, 0) ;1 Eintrag selektieren
    EndFunc ;==>read_INI

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

    Func _addTB()
    $write1 = GUICtrlRead($hedtBox)
    If $write1 <> "" Then ;nur wenn im Edit etwas eingetragen
    $write2 = InputBox("Baustein verwalten unter", "Bitte Kurzbegriff eingeben")
    If $write2 <> "" Then ;nur wenn ein Kurzbegrigg eingegeben
    _writeTB($write2) ;Routine zum schreiben aufrufen
    GUICtrlSetData($hcboTB, $write2, $write2) ;in ComboBox eintragen und gleichzeitig selektieren
    EndIf
    EndIf
    show_Selection() ;Routine die die Selektion zeigt aufrufen
    EndFunc ;==>_addTB

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

    Func _writeTB($sId_TB) ;Routine zum Screiben in INI
    ;hier werdeb die Zeichen @CR (Wagebrücklauf) @LF Zeilenumbruche und @CRLF getauscht
    $write1 = GUICtrlRead($hedtBox)
    $write1 = StringReplace($write1, @CRLF, "_%CRLF%_")
    $write1 = StringReplace($write1, @CR, "_%CR%_")
    $write1 = StringReplace($write1, @LF, "_%LF%_")
    If $write1 <> "" Then IniWrite($sIni, "Bausteine", $sId_TB, $write1) ;wenn nicht leer in INI schreien
    EndFunc ;==>_writeTB

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

    Func show_Selection() ;Selekzion anzeigen
    If GUICtrlRead($hcboTB) = $sElect Then ;es ist kein Textbaustein asgewählt
    GUICtrlSetState($hbtnClear, $GUI_DISABLE) ;Leeren-Button disablen
    GUICtrlSetData($hedtBox, "") ;also EDIT leeren
    Else
    GUICtrlSetState($hbtnClear, $GUI_ENABLE) ;Leeren-Button enablen
    $sId_TB = GUICtrlRead($hcboTB) ;Kurzbezeichnng holen
    ;ConsoleWrite("ausgewählt: " & $sId_TB & @CRLF) ;Kontrolausgabe in Console
    $write1 = IniRead($sIni, "Bausteine", $sId_TB, "") ;Baustein aus INI lesen
    ;hier werdeb die Zeichen für @CR (Wagebrücklauf) @LF Zeilenumbruche und @CRLF zurück getauscht
    $write1 = StringReplace($write1, "_%CRLF%_", @CRLF) ;
    $write1 = StringReplace($write1, "_%CR%_", @CR)
    $write1 = StringReplace($write1, "_%LF%_", @LF)

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

    GUICtrlSetData($hedtBox, $write1) ;Baustein in Edit-Box anzeigen
    EndIf
    EndFunc ;==>show_Selection

    [/autoit]

    ScreenShot:
    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Viel Spass damit,

    Edit1: Skript ausgetauscht: @CRLF, @CR und @LF bleiben jetzt erhalten
    Edit2: ScreenShot angehängt
    Edit3: hoffentlich letzten Rechtschreibfehler gefunden
    Edit4: besser auskommentiert
    Edit5: 2. Skript im GuiGetMsg-Modus angefügt

    mfg (Auto)Bert

    Dateien

    37_Beispiel f 88,5 kB – 0 Downloads
  • Func Problem

    • autoBert
    • 23. Mai 2010 um 19:11

    Mit GUICtrlCreateInput ein Einagbefeld im oberen Tabbereich. Dies ist aber meines Erachtens in der Praxis nicht bedienerfreundlich, denn einmal vergessen einen neuen Namen einzugeben und es wird die Kartei eines anderen Kunden überschrieben (Kann allerdings mit der ComboBox auch passieren)

    mfg (Auto)Bert

  • [Beispiel] MiniUrl-Manager (kleiner Webseitenverwalter)

    • autoBert
    • 23. Mai 2010 um 18:40

    Hallo com,

    hier ein kleines Skriptbeispiel um seine bevorzugten Webseiten in einer INI zu verwalten:

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.6.1
    Author: AutoBert: http://www.autoit.de/index.php?page…4341#post164341

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

    Skriptbeispiel für den Umgang mit INI-Files und ComboBox
    #ce ----------------------------------------------------------------------------

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

    #include <GUIConstantsEx.au3>
    #Include <GuiComboBox.au3>
    #include <StaticConstants.au3>

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

    Const $sElect = "bitte eine URL auswählen"
    Global $URL

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

    If Not FileExists(@ScriptDir & "\URL.INI") Then
    $sData = "AutoIt=http://www.autoit.de" & @LF
    $sData &= "Buch=http://www.autoit.de/index.php?page=Thread&postID=92818#post92818" & @LF
    $sData &= "richtig Posten=http://www.autoit.de/index.php?page=Thread&threadID=4424" & @LF
    $sData &= "Tutorial=http://wiki.autoit.de/wiki/index.php/Tutorial" & @LF
    $sData &= "Skriptfehler finden=http://www.autoit.de/index.php?page=Thread&threadID=13785" & @LF
    $sData &= "Hilfe=http://translation.autoit.de/autoitinfo/hilfedateien/AutoIt-Hilfe-Deutsch-3.3.6.1-Stand-09_05_10.zip" & @LF
    $sData &= "MiniUrl-Manger=http://www.autoit.de/index.php?page=Thread&postID=164341#post164341" & @LF
    IniWriteSection(@ScriptDir & "\URL.INI", "URLs", $sData)
    EndIf

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

    $hGui = GUICreate("MiniUrl-Manager", 300, 90, 302, 218)
    $hcboProg = GUICtrlCreateCombo("", 8, 8, 200, 25)
    $hbtnAdd = GUICtrlCreateButton("&Hinzufügen", 213, 8,80)
    $hbtnDel = GUICtrlCreateButton("&Löschen", 213, 35,80)
    $hlblURL = GUICtrlCreateLabel("", 8, 70, 290,25)
    $hbtnOpen = GUICtrlCreateButton("&Öffnen", 8, 35,200)
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUICtrlCreateGraphic(0,65,300,2,$SS_ETCHEDHORZ )
    read_INI()
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hbtnAdd
    $write1 = InputBox("URL", "Bitte eine gültige URL eingeben")
    If $write1 <> "" Then
    $write2 = InputBox("URL verwalten unter", "Bitte Kurzbegriff eingeben")
    If $write2 <> "" Then IniWrite(@ScriptDir & "\URL.INI", "URLs", $write2, $write1)
    GUICtrlSetData($hcboProg, $write2, $write2)
    EndIf
    show_Selection()
    Case $hbtnDel
    $sDel = GUICtrlRead($hcboProg)
    IniDelete(@ScriptDir & "\URL.INI", "URLs", $sDel)
    GUICtrlSetData($hcboProg,"")
    read_INI()
    Case $hcboProg
    show_Selection()
    Case $hbtnOpen
    ShellExecute($URL)
    ;ConsoleWrite($URL & @CRLF)
    EndSwitch
    WEnd

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

    Func read_INI()
    $list1 = IniReadSection(@ScriptDir & "\URL.INI", "URLs")
    ConsoleWrite($list1 & @CRLF)
    if IsArray($list1) Then
    For $i = 1 To $list1[0][0]
    GUICtrlSetData($hcboProg, $list1[$i][0])
    Next
    EndIf
    _GUICtrlComboBox_InsertString ($hcboProg,$sElect,0)
    _GUICtrlComboBox_SetCurSel($hcboProg,0)
    EndFunc ;==>read_INI

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

    Func show_Selection()
    If GUICtrlRead($hcboProg) = $sElect Then
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUICtrlSetData($hlblURL, "")
    Else
    GUICtrlSetState($hbtnOpen, $GUI_ENABLE)
    $Prog = GUICtrlRead($hcboProg)
    ConsoleWrite("ausgewählt: " & $Prog & @CRLF)
    $URL = IniRead(@ScriptDir & "\URL.INI", "URLs", $Prog, "")
    GUICtrlSetData($hlblURL, $URL)
    EndIf
    EndFunc ;==>show_Selection

    [/autoit]

    ScreenShot: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    viel Spass damit,

    Edit1: damit ich die PostID ins Skript einbinden kann
    Edit2: Skript ausgetauscht (kleine Designändernug) und ScreenShot angehängt
    Edit3: Skript ausgetauscht (Ini mit wichtigen Links vorbelegt)

    mfg (Auto)Bert

  • Func Problem

    • autoBert
    • 23. Mai 2010 um 18:26

    Du könntest eine ComboBox einfügen, mit deren Hilfe du eine Auswahl aller Kunden in eine Ini speicherst. Ähnlich wie in folgendem Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #Include <GuiComboBox.au3>

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

    Const $sElect = "bitte eine URL auswählen"
    Global $URL

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

    If Not FileExists(@ScriptDir & "\URL.INI") Then
    $sData = "AutoIt=http://www.autoit.de" & @LF & "Dein Thread=http://www.autoit.de/index.php?page=Thread&postID=156685#post156685" & @LF & "AutoIt V3=http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe"
    IniWriteSection(@ScriptDir & "\URL.INI", "URLs", $sData)
    EndIf

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

    $hGui = GUICreate("Combobox mit INI für URL-Aufruf", 300, 160, 302, 218)
    $hcboProg = GUICtrlCreateCombo("", 8, 8, 200, 25)
    $hbtnAdd = GUICtrlCreateButton("&Hinzufügen", 213, 8)
    $hbtnDel = GUICtrlCreateButton("&Löschen", 213, 33)
    $hlblURL = GUICtrlCreateLabel("", 8, 35, 200, 50)
    $hbtnOpen = GUICtrlCreateButton("&Öffnen", 8, 85)
    read_INI()
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hbtnAdd
    $write1 = InputBox("URL", "Bitte eine gültige URL eingeben")
    If $write1 <> "" Then
    $write2 = InputBox("URL verwalten unter", "Bitte Kurzbegriff eingeben")
    If $write2 <> "" Then IniWrite(@ScriptDir & "\URL.INI", "URLs", $write2, $write1)
    GUICtrlSetData($hcboProg, $write2, $write2)
    EndIf
    show_Selection()
    Case $hbtnDel
    $sDel = GUICtrlRead($hcboProg)
    IniDelete(@ScriptDir & "\URL.INI", "URLs", $sDel)
    GUICtrlSetData($hcboProg,"")
    read_INI()
    Case $hcboProg
    show_Selection()
    Case $hbtnOpen
    ShellExecute($URL)
    ;ConsoleWrite($URL & @CRLF)
    EndSwitch
    WEnd

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

    Func read_INI()
    $list1 = IniReadSection(@ScriptDir & "\URL.INI", "URLs")
    ConsoleWrite($list1 & @CRLF)
    if IsArray($list1) Then
    For $i = 1 To $list1[0][0]
    GUICtrlSetData($hcboProg, $list1[$i][0])
    Next
    EndIf
    _GUICtrlComboBox_InsertString ($hcboProg,$sElect,0)
    _GUICtrlComboBox_SetCurSel($hcboProg,0)
    EndFunc ;==>read_INI

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

    Func show_Selection()
    If GUICtrlRead($hcboProg) = $sElect Then
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUICtrlSetData($hlblURL, "")
    Else
    GUICtrlSetState($hbtnOpen, $GUI_ENABLE)
    $Prog = GUICtrlRead($hcboProg)
    ConsoleWrite("ausgewählt: " & $Prog & @CRLF)
    $URL = IniRead(@ScriptDir & "\URL.INI", "URLs", $Prog, "")
    GUICtrlSetData($hlblURL, $URL)
    EndIf
    EndFunc ;==>show_Selection

    [/autoit]


    Falls dies aber ein grösseres Projekt wird solltest du dich in SQLite einarbeiten, da ist die Datenverwaltung deutlich einfacher,

    mfg (Auto)Bert

  • Func Problem

    • autoBert
    • 23. Mai 2010 um 17:25

    Hallo StormRider,

    du hast die Funktionen mit einem ungültigen Wert aufgerufen. Mach es so und es klappt:

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.3.6.1
    Author: myName
    Script Function:
    Template AutoIt script.
    #ce ----------------------------------------------------------------------------
    ; Script Start - Add your code below here
    #include <ScrollBarConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiButton.au3>
    #include <StructureConstants.au3>
    #include <GUIScrollBars.au3>
    #include <GUIScroll.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiTab.au3>
    Global $sIni = @ScriptDir & "\Gui.ini"
    Global $iEdits = IniRead($sIni, "Edits", "Count", 1)
    ConsoleWrite($iEdits & @CRLF)
    Global $hEdit[$iEdits][6], $iTop = 5

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

    $Kundenkartei = GUICreate("Kundenkartei", 1400, 1000)
    $Load = GUICtrlCreateButton("Load", 30, 16, 75, 25)
    $Save = GUICtrlCreateButton("Save", 130, 16, 75, 25)
    $New = GUICtrlCreateButton("New" , 230, 16, 75, 25)
    $Rechnung = GUICtrlCreateButton("Rechnung", 330, 16, 75, 25)
    $PageControl1 = GUICtrlCreateTab(40, 65, 1300, 900)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $TabSheet1 = GUICtrlCreateTabItem("Besitzer ") ;Besitzer
    $Name = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Vorname = GUICtrlCreateLabel("Vorname", 56, 188, 68, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Hausnummer = GUICtrlCreateLabel("Hausnummer", 56, 308, 96, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $weg = GUICtrlCreateLabel("Straße", 56, 248, 51, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Postleitzahl = GUICtrlCreateLabel("Postleitzahl", 56, 368, 83, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Ort = GUICtrlCreateLabel("Ort", 56, 428, 26, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Tele = GUICtrlCreateLabel("Tele.", 56, 488, 39, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Mobil = GUICtrlCreateLabel("Mobil-tele.", 56, 548, 78, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $VornameIn = GUICtrlCreateInput("", 210, 188, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $StraIn = GUICtrlCreateInput("", 210, 248, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $PostleitzahlIn = GUICtrlCreateInput("", 210, 368, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $OrtIn = GUICtrlCreateInput("", 210, 428, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TeleIn = GUICtrlCreateInput("", 210, 488, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $MobilIn = GUICtrlCreateInput("", 210, 548, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $HausnummerIn = GUICtrlCreateInput("", 210, 308, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TabSheet2 = GUICtrlCreateTabItem("Tier ") ;Tier
    $TName = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTierart = GUICtrlCreateLabel("Tierart", 56, 188, 49, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TRasse = GUICtrlCreateLabel("Rasse", 56, 248, 49, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGb = GUICtrlCreateLabel("Geburtztag", 56, 308, 80, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGeschlecht = GUICtrlCreateLabel("Geschlecht", 56, 368, 81, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TKennzeichen = GUICtrlCreateLabel("Kennzeichen", 56, 428, 93, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTranspondernummer = GUICtrlCreateLabel("Transpondernummer", 56, 488, 142, 21)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TNameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTierartIn = GUICtrlCreateInput("", 210, 188, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TRasseIn = GUICtrlCreateInput("", 210, 248, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGbIn = GUICtrlCreateInput("", 210, 308, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGeschlechtIn = GUICtrlCreateInput("", 210, 368, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TKennzeichenIn = GUICtrlCreateInput("", 210, 428, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTranspondernummerIn = GUICtrlCreateInput("", 210, 488, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TabSheet3 = GUICtrlCreateTabItem("Behandlung ") ;Behandlung
    $hAdd = GUICtrlCreateButton("Hinzufügen", 430, 16, 75, 25)
    GUICtrlCreateTabItem("")
    $hTabSheet3 = GUICreate("HilfsTab 3", 1270, 820, 55, 130, BitOR($WS_POPUP, $WS_VSCROLL, $WS_CLIPSIBLINGS), $WS_EX_MDICHILD, $Kundenkartei)
    GUICtrlSetBkColor($hTabSheet3,0xFFFFFF)
    For $i = 0 To $iEdits - 1
    _newEdit($i)
    Next
    GUISetState(@SW_SHOW, $Kundenkartei)
    Scrollbar_Create($hTabSheet3, $SB_VERT, 10 + ($iEdits-5)*80)
    Scrollbar_Step(20, $hTabSheet3, $SB_VERT)
    GUISetState(@SW_HIDE, $hTabSheet3)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hAdd
    ReDim $hEdit[UBound($hEdit) + 1][6] ;<=============== warscheins noch von mir
    _newEdit($iEdits)
    $iEdits += 1
    IniWrite($sIni, "Edits", "Count", $iEdits)
    _GUIScrollBars_SetScrollRange($hTabSheet3, $SB_VERT, 0, 5 + 10+($iEdits-5)*80)
    Case $PageControl1
    If _GUICtrlTab_GetCurSel($PageControl1) = 2 Then
    GUISetState(@SW_SHOW, $hTabSheet3)
    Else
    GUISetState(@SW_HIDE, $hTabSheet3)
    EndIf
    Case $Save
    for $i = 0 to $iEdits -1 ;<=======================
    _SaveEdit($i)
    Next
    Case $Load
    for $i = 0 to $iEdits -1 ;<=======================
    _loadEdit($i)
    Next
    EndSwitch
    WEnd
    Func _newEdit($iEditNr)
    GUISwitch($hTabSheet3)
    ConsoleWrite($iEditNr & @CRLF)
    $hEdit[$iEditNr][0] = GUICtrlCreateEdit("", 56, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][1] = GUICtrlCreateEdit("", 236, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][2] = GUICtrlCreateEdit("", 416, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][3] = GUICtrlCreateEdit("", 596, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][4] = GUICtrlCreateEdit("", 776, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][5] = GUICtrlCreateEdit("", 956, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $iTop += 80
    GUISwitch($Kundenkartei)
    EndFunc ;==>_newEdit

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

    Func _loadEdit($iEditNr)
    $hload = InputBox("Load", "Welche Kundenkartei soll geladen werden?")
    GUICtrlSetData($hEdit[$iEditNr][0],IniRead($hload,"Edit" & $iEditNr & "0" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][1],IniRead($hload,"Edit" & $iEditNr & "1" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][2],IniRead($hload,"Edit" & $iEditNr & "2" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][3],IniRead($hload,"Edit" & $iEditNr & "3" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][4],IniRead($hload,"Edit" & $iEditNr & "4" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][5],IniRead($hload,"Edit" & $iEditNr & "5" ,"Edit", ""))
    EndFunc
    Func _SaveEdit($iEditNr)
    ConsoleWrite("Zeilen: " & UBound($hEdit) & "Spalten: " & UBound($hEdit,2) & "Dim: " & UBound($hEdit,0) & @CRLF)
    $iSave = InputBox("Save", "Unter welchem Titel soll die Kundenkartei gespeichert werden?")
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "0" ,"Edit", GUICtrlRead($hEdit[$iEditNr][0]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "1" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "2" ,"Edit", GUICtrlRead($hEdit[$iEditNr][2]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "3" ,"Edit", GUICtrlRead($hEdit[$iEditNr][3]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "4" ,"Edit", GUICtrlRead($hEdit[$iEditNr][4]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "5" ,"Edit", GUICtrlRead($hEdit[$iEditNr][5]))
    EndFunc

    [/autoit]

    mfg (Auuto)Bert

  • Problem mit FileSetAttrib

    • autoBert
    • 23. Mai 2010 um 16:57

    Hallo Data,

    so sollte es funktionieren:

    Spoiler anzeigen
    [autoit]

    < #include
    #include
    #RequireAdmin
    Opt("TrayIconHide", 1)
    $Breite = 335
    $Hoehe = 144

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

    GUICreate("Attribut-Changer", $Breite + 60, $Hoehe, -1, -1, -1, 0x00000010)
    GUISetState($GUI_ACCEPTFILES)

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

    GUICtrlCreateMenu("Programm", 1)
    $Exit = GUICtrlCreateMenuItem("Programm Beenden", 1)

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

    GUICtrlCreateMenu("Hilfe", 2)
    $Hilfe = GUICtrlCreateMenuItem("Hilfe", 2)
    GUICtrlCreateMenuItem("", 2)
    $Ueber = GUICtrlCreateMenuItem("?ber", 2)

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

    $Datei = GUICtrlCreateInput("""Datei ausw?hlen...""", 10, $Hoehe - 134, $Breite, 20, (-1))
    GUICtrlSetState($Datei, $GUI_ACCEPTFILES)
    $FileRead = GUICtrlCreateButton("...", $Breite + 20, $Hoehe - 135, 30, 22)

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

    $Buttons = $Breite - 130
    $ButtonsHigh = $Hoehe - 30

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

    $OKButton = GUICtrlCreateButton("OK", $Buttons, $ButtonsHigh, 80, 22)
    $CancelButton = GUICtrlCreateButton("Abbrechen", $Buttons + 100, $ButtonsHigh, 80, 22)

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

    $CHKBX = $Hoehe - 94
    $CHKBXW = 20

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

    GUICtrlCreateGroup("Standard-Attribute", $CHKBXW - 10, $CHKBX - 15, 118, 100)
    $Schreibgeschuetzt = GUICtrlCreateCheckbox("Schreibgesch?tzt", $CHKBXW, $CHKBX)
    $Versteckt = GUICtrlCreateCheckbox("Versteckt", $CHKBXW, $CHKBX + 20)
    $Archiv = GUICtrlCreateCheckbox("Archiv", $CHKBXW, $CHKBX + 40)
    $Normal = GUICtrlCreateCheckbox("Normal", $CHKBXW, $CHKBX + 60)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    GUICtrlCreateGroup("Netzwerk-Attribute", $CHKBXW + 246, $CHKBX - 15, 118, 40)
    $Offline = GUICtrlCreateCheckbox("Offline", $CHKBXW + 256, $CHKBX)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    GUICtrlCreateGroup("System-Attribute", $CHKBXW + 118, $CHKBX - 15, 118, 60)
    $Temporaer = GUICtrlCreateCheckbox("Tempor?r", $CHKBXW + 128, $CHKBX)
    $System = GUICtrlCreateCheckbox("System", $CHKBXW + 128, $CHKBX + 20)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    GUICtrlCreateGroup("", $CHKBXW + 246, $CHKBX + 22, 118, 23)
    GUICtrlCreateLabel("IP: " & @IPAddress1, $CHKBXW + 256, $CHKBX + 30, 100, 13)

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

    $sAtrrib = ""
    $R = 0
    $H = 0
    $A = 0
    $N = 0
    $O = 0
    $T = 0
    $S = 0

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $Schreibgeschuetzt
    $R = 1
    Case $msg = $Versteckt
    $H = 1
    Case $msg = $Archiv
    $A = 1
    Case $msg = $Normal
    $N = 1
    Case $msg = $Offline
    $O = 1
    Case $msg = $Temporaer
    $T = 1
    Case $msg = $System
    $S = 1
    Case $msg = $OKButton
    GUICtrlSetState($Datei, $GUI_DISABLE)
    GUICtrlSetState($FileRead, $GUI_DISABLE)

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

    GUICtrlSetState($Schreibgeschuetzt, $GUI_DISABLE)
    GUICtrlSetState($Versteckt, $GUI_DISABLE)
    GUICtrlSetState($Archiv, $GUI_DISABLE)
    GUICtrlSetState($Normal, $GUI_DISABLE)
    GUICtrlSetState($Offline, $GUI_DISABLE)
    GUICtrlSetState($Temporaer, $GUI_DISABLE)
    GUICtrlSetState($System, $GUI_DISABLE)
    $File = GUICtrlRead($Datei)

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

    If $R = 1 Then
    $sAtrrib = "+R")
    Else
    $sAtrrib = "-R"
    EndIf
    If $H = 1 Then
    $sAtrrib &= "+H"
    Else
    $sAtrrib &= "-H"
    EndIf
    If $A = 1 Then
    $sAtrrib &= "+A"
    Else
    $sAtrrib &= "-A"
    EndIf
    If $N = 1 Then
    $sAtrrib &= "+N"
    Else
    $sAtrrib &= "-N"
    EndIf
    If $O = 1 Then
    $sAtrrib &= "+O"
    Else
    $sAtrrib &= "-O"
    EndIf
    If $T = 1 Then
    $sAtrrib &= "+T"
    Else
    $sAtrrib &= "-T"
    EndIf
    If $S = 1 Then
    $sAtrrib &= "+S"
    Else
    $sAtrrib &= "-S"
    EndIf
    FileSetAttrib($File, $sAtrrib)
    GUICtrlSetState($Datei, $GUI_ENABLE)
    GUICtrlSetState($FileRead, $GUI_ENABLE)

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

    GUICtrlSetState($Schreibgeschuetzt, $GUI_ENABLE)
    GUICtrlSetState($Versteckt, $GUI_ENABLE)
    GUICtrlSetState($Archiv, $GUI_ENABLE)
    GUICtrlSetState($Normal, $GUI_ENABLE)
    GUICtrlSetState($Offline, $GUI_ENABLE)
    GUICtrlSetState($Temporaer, $GUI_ENABLE)
    GUICtrlSetState($System, $GUI_ENABLE)
    Case $msg = $FileRead
    $Set = FileOpenDialog("Datei ?ffnen...", @MyDocumentsDir, "Alle Dateien (*.*)")
    GUICtrlSetData($Datei, $Set)

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

    Case $msg = $GUI_EVENT_CLOSE Or $msg = $CancelButton
    Exit

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

    EndSelect
    WEnd

    [/autoit]

    ungetestet mit Search and Replace erstellt,

    mfg (Auto)Bert

  • Func-Problem (Reloaded)

    • autoBert
    • 23. Mai 2010 um 00:50

    Hallo }{exer,

    das Ändern des Eröffnngspostes hat dir schon in [ offen ] Func - Problem nicht geholfen. Wieso versteckst du diesmal dein Skript auf PasteBin und postest es nicht hier :?:

    Oscar bitte closen

    mfg (Auto)Bert

  • Problem mit E-Mail Skript

    • autoBert
    • 23. Mai 2010 um 00:08

    Hallo Helveticus,

    Zitat von Hilfe

    COM-Erweiterungen mit AutoIt
    Eine kurze Einführung

    Was ist COM?
    COM steht für "Component Object Model" und bezeichnet Microsofts Weg, Software über eine gemeinsame Schnittstelle miteinander zu verbinden. Die Interfaces sind in einem COM-Objekt definiert.

    mfg (Auto)Bert

  • Func-Problem (Reloaded)

    • autoBert
    • 23. Mai 2010 um 00:02
    Zitat von }{exer

    Hallo auch AutoBert !
    Wer lesen kann ist ganz klar im Vorteil. Und ausserdem bildet es. Versuchs doch mal !
    Ich sag dir Youtube wenn ich das wollte was du meinst.

    was es in diesem Forum dazu zu lesen gab, habe ich gelesen. Da hier Source-Code eingestellt werden kann ist es gearde zu unhöflich auf eine andere Seite zu verlinken, ausser man möchte etwas verbergen,
    Dir empfele ich zu deiner Bildung die Forenregeln durchzulesen. Auch die Hilfe soll sehr lehrreich sein. Vielleicht kannst du uns dann in Zukunft mit deinen BOT-Threads verschonen,

    mfg (Auto)Bert

  • Func-Problem (Reloaded)

    • autoBert
    • 22. Mai 2010 um 23:42

    Hallo }{exer,

    meinst du wenn du kein Skript postest (aber statt dessen einen Link zu PasteBin) fällt es nicht auf,dass du an einem BOT bist. Dein vorhergehender Thread zu diesem Thema wurde geclosed.
    Siehe: [ offen ] Func - Problem

    Am 1. Tag nach einem gecloseden Thread genau daran weiter machen, finde ich sehr dreist. :cursing:
    Hast du dir den nicht die Forenregeln die du mit der Anmeldung akzeptiert hast durchgelesen :?:

  • EditFeld - Zeilennumerierung

    • autoBert
    • 22. Mai 2010 um 22:47

    Hallo StayAwayKnight,

    das musst du dir schon selber basteln. Nimm dazu

    • ein 2. EditControl hat den Vorteil, dass du die Zeilen-Nr. zwar siehst, aber trotzdem im eigentlichen Text nicht vorhanden sind
    • oder ein RichEdit-Control und sperre die von dir erzeugte ZeilenNr. am Anfang gegen Bearbeitung

    mfg (Auto)Bert

  • Problem mit avi-Einbindung

    • autoBert
    • 22. Mai 2010 um 22:23

    Die Fehlermeldung ist doch eindeutig, teste es doch einfach einmal mit C:\Programme\AutoIt3\Examples\GUI\sampleAVI.avi

    mfg (Auto)Bert

  • Hilfe

    • autoBert
    • 22. Mai 2010 um 22:05
    Zitat von ChingsKhane

    Es ist so es bring nichts wenn man einfach Quellcodes als übung bekommt wenn man garnicht weißwas welcher Befehl bedeutet.

    du kannst doch jeden Befehl den du noch nicht kennst in der Hilfe nachschlagen. Zum Anfang empfehle ich dir auch die Hilfe von Anfang an durch zu lesen/arbeiten im besonderen ab Abschnitt Tutorials bis einschliesslich Funktionsreferenz.
    Sehr hilfreich ist auch das [ gelöst ] Buch von peethebee ,

    viel Spass dabei

  • tabsheet

    • autoBert
    • 22. Mai 2010 um 21:34

    Hallo StormRider,

    ich habe das Skript noch dahin ergänzt, dass die Edit's auch wieder gespeichert und geladen werden:

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.3.6.1
    Author: myName
    Script Function:
    Template AutoIt script.
    #ce ----------------------------------------------------------------------------
    ; Script Start - Add your code below here
    #include <ScrollBarConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiButton.au3>
    #include <StructureConstants.au3>
    #include <GUIScrollBars.au3>
    #include <GUIScroll.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiTab.au3>

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

    Global $sIni = @ScriptDir & "\Gui.ini"
    Global $iEdits = IniRead($sIni, "Edits", "Count", 1)
    ConsoleWrite($iEdits & @CRLF)
    Global $hEdit[$iEdits][5], $iTop = 5

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

    $Kundenkartei = GUICreate("Kundenkartei", 1024, 550)
    $Load = GUICtrlCreateButton("Load", 30, 16, 75, 25)
    $Save = GUICtrlCreateButton("Save", 130, 16, 75, 25)
    $PageControl1 = GUICtrlCreateTab(39, 65, 1204, 24)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $TabSheet2 = GUICtrlCreateTabItem(" 1 ")
    $TabSheet3 = GUICtrlCreateTabItem(" 2 ")
    $hAdd = GUICtrlCreateButton("Hinzufügen", 330, 16, 75, 25)
    GUICtrlCreateTabItem("")
    $hTabSheet2 = GUICreate("HilfsTab 2", 990, 460, 5, 90, $WS_POPUP, $WS_EX_MDICHILD, $Kundenkartei)
    $hTabSheet3 = GUICreate("HilfsTab 3", 990, 460, 5, 90, BitOR($WS_POPUP, $WS_VSCROLL, $WS_CLIPSIBLINGS), $WS_EX_MDICHILD, $Kundenkartei)
    GUISetBkColor($hTabSheet2,0xFF0FF0)
    GUICtrlSetBkColor($hTabSheet3,0xFF0FF0)
    For $i = 0 To $iEdits - 1
    _newEdit($i)
    _loadEdit($i)
    Next
    GUISetState(@SW_SHOW, $Kundenkartei)

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

    Scrollbar_Create($hTabSheet3, $SB_VERT, 10 + ($iEdits-5)*80)
    Scrollbar_Step(20, $hTabSheet3, $SB_VERT)
    GUISetState(@SW_HIDE, $hTabSheet3)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    For $i = 0 to $iEdits -1
    _SaveEdit($i)
    Next
    Exit
    Case $hAdd
    ReDim $hEdit[UBound($hEdit) + 1][5]
    _newEdit($iEdits)
    $iEdits += 1
    IniWrite($sIni, "Edits", "Count", $iEdits)
    _GUIScrollBars_SetScrollRange($hTabSheet3, $SB_VERT, 0, 5 + 10+($iEdits-5)*80)
    Case $PageControl1
    If _GUICtrlTab_GetCurSel($PageControl1) = 1 Then
    GUISetState(@SW_SHOW, $hTabSheet3)
    GUISetState(@SW_HIDE, $hTabSheet2)
    Else
    GUISetState(@SW_HIDE, $hTabSheet3)
    GUISetState(@SW_SHOW, $hTabSheet2)
    EndIf
    EndSwitch
    WEnd

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

    Func _newEdit($iEditNr)
    GUISwitch($hTabSheet3)
    ConsoleWrite($iEditNr & @CRLF)
    $hEdit[$iEditNr][0] = GUICtrlCreateEdit("", 56, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][1] = GUICtrlCreateEdit("", 236, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][2] = GUICtrlCreateEdit("", 416, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][3] = GUICtrlCreateEdit("", 596, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][4] = GUICtrlCreateEdit("", 776, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    ;$hEdit[$iEditNr] = GUICtrlCreateEdit("", 956, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $iTop += 80
    GUISwitch($Kundenkartei)
    EndFunc ;==>_newEdit

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

    Func _loadEdit($iEditNr)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_0.txt",0)
    GUICtrlSetData($hEdit[$iEditNr][0],FileRead($hFile))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_1.txt",0)
    GUICtrlSetData($hEdit[$iEditNr][1],FileRead($hFile))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_2.txt",0)
    GUICtrlSetData($hEdit[$iEditNr][2],FileRead($hFile))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_3.txt",0)
    GUICtrlSetData($hEdit[$iEditNr][3],FileRead($hFile))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_4.txt",0)
    GUICtrlSetData($hEdit[$iEditNr][4],FileRead($hFile))
    FileClose($hFile)
    EndFunc

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

    Func _SaveEdit($iEditNr)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_0.txt",2)
    FileWrite($hFile,GUICtrlRead($hEdit[$iEditNr][0]))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_1.txt",2)
    FileWrite($hFile,GUICtrlRead($hEdit[$iEditNr][1]))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_2.txt",2)
    FileWrite($hFile,GUICtrlRead($hEdit[$iEditNr][2]))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_3.txt",2)
    FileWrite($hFile,GUICtrlRead($hEdit[$iEditNr][3]))
    FileClose($hFile)
    Local $hFile = FileOpen("Edit" & $iEditNr & "_4.txt",2)
    FileWrite($hFile,GUICtrlRead($hEdit[$iEditNr][4]))
    FileClose($hFile)
    EndFunc

    [/autoit]

    mfg (Auto)Bert

  • Tastatur Zähler

    • autoBert
    • 22. Mai 2010 um 17:59
    Zitat von Zero2q

    Die demo funktioniert ja gar nicht =(

    Das Hilfebeispiel funktioniert, sprich es gibt direkt nach dem Start die Länge des geladenen Textes (changelog.txt) aus. Du müsstest dies:

    [autoit]

    ; Ermittelt die Textlänge
    _GUICtrlStatusBar_SetText($StatusBar, "Textlänge: " & _GUICtrlEdit_GetTextLen($hEdit) & " Zeichen")

    [/autoit]

    nur auf einen Button legen (besser noch eine Func die du nach 10 Minuten aufrufst)

    Zitat von Zero2q

    hab es jetzt mal so versucht ging aber nicht...

    kann es auch nicht, da du

    • die Gui erst nach der Statusbar (mit einem anderen Namen erstellst)
    • und kein Edit-Feld hast

    mfg (Auuto)Bert

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™