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

  • Label einer bestehenden Gruppe hinzufügen

    • autoBert
    • 18. November 2010 um 22:39

    mit ControlMove

    mfg autoBert

  • Label einer bestehenden Gruppe hinzufügen

    • autoBert
    • 18. November 2010 um 22:14

    Hallo Klumpi,

    für Check- und Radioboxen verstehe ich ja den Sinn einer Gruppe, aber bei Label fallen mir nur optische Gründe ein also einfach in diesem Bereich sinnvoll positionieren,

    mfg autoBert

  • $Inhalt + $Inhalt2 + $Button1

    • autoBert
    • 18. November 2010 um 22:06

    Hallo cOraXx,

    hier ein Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiButton.au3>
    #include <GuiImageList.au3>
    GUICreate("Login", 330, 175)
    GUICtrlCreateLabel("Benutzername :", 8, 48, 120, 20,$SS_RIGHT)
    $idInpUser = GUICtrlCreateInput("", 144, 44, 145, 24)
    GUICtrlCreateLabel("Passwort :", 8, 80, 120, 20,$SS_RIGHT)
    $idInpPW = GUICtrlCreateInput("", 144, 76, 145, 24, BitOR($ES_PASSWORD, $ES_AUTOHSCROLL))
    $idBtnLogin = GUICtrlCreateButton("Login", 8, 140, 155, 25, $WS_GROUP)
    $idBtnExit = GUICtrlCreateButton("Beenden", 165, 140, 155, 25, $WS_GROUP)
    GUISetState(@SW_SHOW)
    $iLoginTrys = 0
    $iMaxTrys = 5

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

    While 1
    $LoginState = GUICtrlGetState($idBtnLogin)
    If GUICtrlRead($idInpPW) <> "" And GUICtrlRead($idInpUser) <> "" Then
    If BitAND($LoginState, $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($idBtnLogin, $GUI_Enable)
    Else
    If BitAND($LoginState, $GUI_Enable) = $GUI_Enable Then GUICtrlSetState($idBtnLogin, $GUI_DISABLE)
    EndIf
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE, $idBtnExit
    Exit
    Case $idBtnLogin
    if (GUICtrlRead($idInpUser) <> "TestUser" Or GUICtrlRead($idInpPW) <> "vergessen") Then
    $iLoginTrys += 1
    If $iLoginTrys > $iMaxTrys-1 Then
    MsgBox(16, $iMaxTrys & " falsche Loginversuche", "Computer wird für 15 Min. gesperrt")
    Exit
    Else
    MsgBox(48, "noch " & $iMaxTrys-$iLoginTrys & " Loginversuch(e)!", "danach wird der Computer für 15 Min. gesperrt")
    EndIf
    Else
    MsgBox(64, "Login" & $iLoginTrys, "Sie haben sich erfolgreich angemeldet!")
    GUIDelete()
    ExitLoop
    EndIf
    EndSwitch
    WEnd

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

    ;und jetzt das unheimlich wichtige Programm
    Opt("MustDeclareVars", 1)

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

    _Main()

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

    Func _Main()
    Local $sBMPNormal = @ScriptDIR & "\Icons\dsFirst_NORMAL.BMP"
    Local $sBMPHot = @ScriptDir & "\Icons\dsFirst_mouseover.bmp"
    Local $sBMPPress = @ScriptDir & "\Icons\dsFirst_mousedown.bmp"
    Local $sBMPImage = @WindowsDir & "\pchealth\helpctr\System\blurbs\watermark_300x.bmp"
    Local $btn1, $btn2, $btn3, $btn4, $msg
    Local $hImagebtn1, $hImagebtn2, $hImagebtn3 ,$hImagebtn4

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

    ;Caveat: Minimum Operating Systems: Windows XP.

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

    ;Image list with multiple images will only show the images
    ;other than the 1st image when Themes are used.

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

    Local $hGUI = GUICreate("Button Imagelists - Minimum OS: Windows XP",400,300)

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

    GUICtrlCreatePic(@WindowsDir & "\Web\Wallpaper\Windows XP.jpg", 0, 0, 400, 300)
    GUICtrlSetState(-1, $GUI_DISABLE)

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

    ;multi state image Bitmap
    $btn1 = GUICtrlCreateButton("This Way", 30, 30, 90, 32)
    GUICtrlSetTip(-1, "Multi state bitmap imagelist")
    $hImagebtn1 = _GUIImageList_Create(24, 24, 3, 3)
    _GUIImageList_AddBitmap($hImagebtn1, $sBMPNormal);1 - Normal
    _GUIImageList_AddBitmap($hImagebtn1, $sBMPHot) ;2 - Hot
    _GUIImageList_AddBitmap($hImagebtn1, $sBMPPress) ;3 - Pressed
    _GUIImageList_AddBitmap($hImagebtn1, $sBMPPress);4 - Disabled
    _GUIImageList_AddBitmap($hImagebtn1, $sBMPNormal);5 - Defaulted
    _GUIImageList_AddBitmap($hImagebtn1, $sBMPNormal);6 - Stylus Hot (tablet computers only)
    _GUICtrlButton_SetImageList($btn1, $hImagebtn1)

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

    ;single state image Bitmap
    $btn2 = GUICtrlCreateButton("This Way", 30, 70, 90, 32)
    GUICtrlSetTip(-1, "Single bitmap imagelist")
    $hImagebtn2 = _GUIImageList_Create(24, 24, 5, 3)
    _GUIImageList_AddBitmap($hImagebtn2, $sBMPNormal);1 - Normal
    _GUICtrlButton_SetImageList($btn2, $hImagebtn2)

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

    ;single state image Icon
    $btn3 = GUICtrlCreateButton("Unlock", 30, 110, 90, 40)
    GUICtrlSetTip(-1, "Single icon imagelist")
    $hImagebtn3 = _GUIImageList_Create(32, 32, 5, 3)
    _GUIImageList_AddIcon($hImagebtn3, "msrating.dll", 10, True)
    _GUICtrlButton_SetImageList($btn3, $hImagebtn3)

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

    ;single state image Bitmap with overlayed text
    $btn4 = GUICtrlCreateButton("Help", 30, 160, 90, 90)
    GUICtrlSetTip(-1, "Single bitmap imagelist with overlayed text")
    GUICtrlSetFont(-1, 14, 800, -1, "Comic Sans MS")
    $hImagebtn4 = _GUIImageList_Create(80, 80, 5, 3)
    _GUIImageList_AddBitmap($hImagebtn4, $sBMPImage)
    _GUICtrlButton_SetImageList($btn4, $hImagebtn4, 4)

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $btn1
    Case $btn2
    GUICtrlSetState($btn1, $GUI_DISABLE)
    Case $btn3
    GUICtrlSetState($btn1, $GUI_ENABLE)
    Case $btn4
    EndSwitch
    WEnd
    EndFunc ;==>_Main

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

    für die 2. Gui werden noch die BMP aus dem Anhang benötigt

    mfg autoBert

  • Variabel bei GUI

    • autoBert
    • 18. November 2010 um 21:45

    Hallo raydock,

    hier ein Beispiel mit 2 Combos:

    Spoiler anzeigen
    [autoit]

    ; *** Start added by AutoIt3Wrapper ***
    #include <GUIConstantsEx.au3>
    ; *** End added by AutoIt3Wrapper ***
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Add_Constants=n
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <Date.au3>

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

    $Form1 = GUICreate("2 Combos",200,150)
    $cbo1 = GUICtrlCreateCombo("",5,5,190)
    GUICtrlSetData($cbo1,"Täglich")
    GUICtrlSetData($cbo1,"Wöchentlich")
    GUICtrlSetData($cbo1,"Monatlich")
    GUICtrlSetData($cbo1,"Jährlich")
    $cbo2 = GUICtrlCreateCombo("",5,45,190)

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Switch $msg
    case $Gui_Event_Close
    Exit
    case $cbo1
    $sCbo1 = GUICtrlRead($cbo1)
    GUICtrlSetData($cbo2,"","")
    Switch $sCbo1
    Case "Täglich"
    $sCbo2 = ""
    for $i = 9 to 17
    $sCbo2 &= $i & " Uhr"
    If $i < 17 Then $sCbo2 &= "|"
    Next
    GUICtrlSetData($cbo2,$sCbo2,"9 Uhr")
    Case "Wöchentlich"
    $sCbo2 = ""
    for $i = 1 to 7
    $sCbo2 &= _Locale_DayName($i)
    If $i < 7 Then $sCbo2 &= "|"
    Next
    GUICtrlSetData($cbo2,$sCbo2,_Locale_DayName(1))
    case "Monatlich"
    $sCbo2 = ""
    for $i = 1 to 5
    $sCbo2 &= $i & ". Woche"
    If $i < 5 Then $sCbo2 &= "|"
    Next
    GUICtrlSetData($cbo2,$sCbo2,"1. Woche")
    case "Jährlich"
    $sCbo2 = ""
    for $i = 1 to 12
    $sCbo2 &= _Locale_MonthName($i)
    If $i < 12 Then $sCbo2 &= "|"
    Next
    GUICtrlSetData($cbo2,$sCbo2,_Locale_MonthName(@MON))
    EndSwitch
    EndSwitch
    WEnd

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

    Func _Locale_MonthName($Month, $Abbrev = False)
    ; ==========================================================================================
    ; Autor: Großvater (http://www.autoit.de)
    ; Parameter:
    ; $Month - Nummer des Monats (1 - 12)
    ; $Abbrev - abgekürzten Namen liefern:
    ; |0 : nein
    ; |1 : ja
    ; ==========================================================================================
    Local Const $LOCALE_USER_DEFAULT = 0x0400
    Local Const $LOCALE_SMONTHNAME = 0x37
    Local Const $LOCALE_LOCALE_SABBREVMONTHNAME = 0x43
    Local $LCType = $LOCALE_SMONTHNAME
    If $Abbrev Then $LCType = $LOCALE_LOCALE_SABBREVMONTHNAME
    If Not StringIsInt($Month) Or $Month < 1 Or $Month > 12 Then Return False
    Local $aResult = DllCall("Kernel32.dll", "Int", "GetLocaleInfoA", _
    "UInt", $LOCALE_USER_DEFAULT, _
    "UInt", $LCType + $Month, _
    "Str", "", _
    "Int", 255)
    If @error Or $aResult[0] = 0 Then Return False
    Return $aResult[3]
    EndFunc

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

    Func _Locale_DayName($WDay, $Abbrev = False)
    ; ==========================================================================================
    ; Autor: Großvater (http://www.autoit.de)
    ; Parameter:
    ; $WDay - Nummer des Wochentages (1 - 7) (!!! 1 ist Montag (s.u.) !!!)
    ; $Abbrev - abgekürzten Namen liefern:
    ; |0 : nein
    ; |1 : ja
    ; Anmerkungen:
    ; Zu meinem Erstaunen hat MS in WinNLS.h folgende Konstanten definiert:
    ; #define LOCALE_SDAYNAME1 0x0000002A // long name for Monday
    ; ...
    ; #define LOCALE_SDAYNAME7 0x00000030 // long name for Sunday
    ; Anders als beim Macro @WDAY gilt deshalb der Montag als Tag 1 und der Sonntag
    ; als Tag 7. Der passende Wert lässt sich per Aufruf der UDF-Funktion
    ; _DateToDayOfWeekISO()
    ; ermitteln.
    ; ==========================================================================================
    Local Const $LOCALE_USER_DEFAULT = 0x0400
    Local Const $LOCALE_SDAYNAME = 0x29
    Local Const $LOCALE_SABBREVDAYNAME = 0x30
    Local $LCType = $LOCALE_SDAYNAME
    If $Abbrev Then $LCType = $LOCALE_SABBREVDAYNAME
    If Not StringIsInt($WDay) Or $WDay < 1 Or $WDay > 7 Then Return False
    Local $aResult = DllCall("Kernel32.dll", "Int", "GetLocaleInfoA", _
    "UInt", $LOCALE_USER_DEFAULT, _
    "UInt", $LCType + $WDay, _
    "Str", "", _
    "Int", 255)
    If @error Or $aResult[0] = 0 Then Return False
    Return $aResult[3]
    EndFunc

    [/autoit]

    daran kannst du sehen wie einfach es ist auf die Veränderung einer Combo zu reagieren

    Ps.: das du in einer func eine 2. Endlosschleife machst, ist nicht nötig

    Edit: da hätte ich wohl meinen FF vor dem Posten refreshen sollen oder vor dem absenden etwas weiter nach unten scrollen

    mfg autoBert

  • Passwort Eingabe!

    • autoBert
    • 18. November 2010 um 21:23

    Nein stimmt nicht BitAnd muss hier verwendet werden,

    mfg autoBert

  • If - then

    • autoBert
    • 18. November 2010 um 19:48

    @Dial es ging doch nur um diese Behauptung

    Zitat von Dial

    Und in der Hilfe gibt es "Not" nicht.

    Zitat von Dial

    autoBert
    Denn such mal über Index oder Suche NOT. Da haste dann verloren.
    Ich schätz mal du weisst/wusstest das es unter Operatoren zu finden ist. Nun ich auch


    Wenn man eine Programiersprache lernt (ich denke es ist deine erste) sollte man sich als erstes mit der Hilfe vertraut machen und diese auch durcharbeiten, im Falle AutoIt empfehle ich zumindest bis zur GUI Funktion Referenz.

    mfg autoBert

  • Passwort Eingabe!

    • autoBert
    • 18. November 2010 um 19:37

    Hat misterspeed doch gepostet einfach den Stil $ES_PASSWORD verwenden,

    mfg autoBert

  • If - then

    • autoBert
    • 18. November 2010 um 19:11
    Zitat von Dial

    Und in der Hilfe gibt es "Not" nicht.

    Zitat von Hilfe AutoIt|Sprachreferenz|Operatoren


    Logische Operatoren
    AND Logisches UND. z. B. If $var = 5 AND $var2 > 6 Then (True falls $var 5 entspricht und $var2 größer als 6 ist)
    OR Logisches ODER. z. Bsp.. If $var = 5 OR $var2 > 6 Then (true falls $var gleich 5 ist oder $var2 größer als 6 ist)
    NOT Logisches NICHT. z. B. NOT 1 (FALSE)

    die wichtigste Informatinsquelle sollte man schon bedienen können

    mfg autoBert

  • WinSetOnTop verschwindet

    • autoBert
    • 18. November 2010 um 18:43

    Hallo Ilse,

    doch das klappt, siehe mein abgewandeltes Beispiel:

    Spoiler anzeigen
    [autoit]

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

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

    Global $idGui1, $idGui2 = -99, $idMsgBox, $idZurueck, $idbtnExit2
    _CreateGui2() ;entweder hier oder erst wenn benötigt ($idbtmToGui2 Klick)

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

    $idGui1 = GUICreate('GUI 1', 400, 280, 140, 150, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX), $WS_EX_TOPMOST)
    ;wichtig ist der letzte Parameter
    ;$WS_EX_TOPMOST Hält diese Gui immer an vorderster Stelle
    ;erzeugt eine GUI die zurückgebebene ID wird in der Variablen $idGui1 gespeichert
    ;die GUI hat BOXen für Mininmieren, Maximieren und ist in der Größe frei änderbar
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')

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

    $idbtnToGui2 = GUICtrlCreateButton('&Aufruf GUI 2', 20, 20, 100, 21)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    ;verankert den Button "Afruf Gui 2" links und oben und fixiert die Größe
    ;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand

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

    $idbtnICQ = GUICtrlCreateButton('&ICQ', 20, 50, 100, 21)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    ;verankert den Button "ICQ" links und oben und fixiert die Größe
    ;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand

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

    $idbtnExit1 = GUICtrlCreateButton('be&enden', 20, 80, 100, 21)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    ;verankert den Button "Afruf Gui 2" links und oben und fixiert die Größe
    ;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand

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

    GUISetState(@SW_SHOW, $idGui1)

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

    While 1
    $nMsg = GUIGetMsg(1) ;extended Modus wichtig!!
    Switch $nMsg[1] ;für welches Fenster ist die Message
    Case $idGui1 ;ab hier ist Gui 1 dran
    Switch $nMsg[0] ;welche Message wurde ausgelöst
    Case $idbtnToGui2
    ; GUISetState(@SW_DISABLE, $idGui1) ;Gui 1 für disablen
    ;If $idGui2 = -99 Then _CreateGui2() ;nur wenn nicht am Anfang bereits erzeugt nötig, dann auf Vorbelegung der Variable in Global achten)
    GUISetState(@SW_SHOW, $idGui2) ;Gui 2 anzeigen
    GUISetState(@SW_DISABLE,$idGui1);wichtig sonst kann dieses Fenster in den Vordergrund während GUI2 gezeigt wird
    Case $idbtnICQ
    MsgBox(0, "", "Jetzt würde ICQ gestartet", 0, $idGui1)
    ;wichtig ist der letzte Parameter
    ;$idGui ist das Parent-Fenster dieser MsgBox dadurch bleibt auch sie immer an vorderster Stelle
    ;Run("C:\Program Files\ICQ7.0\ICQ.exe")
    Case $idbtnExit1, $GUI_EVENT_CLOSE
    _end()
    EndSwitch
    Case $idGui2 ;ab hier ist Gui 2 dran
    Switch $nMsg[0] ;welche Message wurde ausgelöst
    Case $idMsgBox
    MsgBox(0, 'Test', 'Test', 0, $idGui2)
    ;wichtig ist der letzte Parameter
    ;$idGui2 ist das Parent-Fenster dieser MsgBox dadurch bleibt auch sie immer an vorderster Stelle
    Case $idZurueck, $GUI_EVENT_CLOSE
    GUISetState(@SW_ENABLE, $idGui1) ;Gui 1 für ensablen
    GUISetState(@SW_HIDE, $idGui2) ;Gui 2 verstecken
    Case $idbtnExit2
    _end()
    EndSwitch
    EndSwitch
    WEnd

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

    Func _CreateGui2()
    $idGui2 = GUICreate('GUI 2', 500, 300, 200, 50, -1, $WS_EX_TOPMOST, $idGui1)
    ;wichtig sind die beiden letzten Parameter
    ;$WS_EX_TOPMOST Hält diese Gui immer an vorderster Stelle
    ;$idGui1 ist das Parent-Fenster
    ;erzeugt eine GUI als Child von Gui1, die zurückgebebene ID wird in der Variablen $idGui2 gespeichert

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

    $idMsgBox = GUICtrlCreateButton('&MsgBox', 20, 20, 100, 21)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    ;verankert den Button "MsgBox" links und oben und fixiert die Größe
    ;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand

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

    $idZurueck = GUICtrlCreateButton('&Zurück zu GUI 1', 20, 50, 100, 21)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    ;verankert den Button "zurück" links und oben und fixiert die Größe
    ;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand

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

    $idbtnExit2 = GUICtrlCreateButton('be&enden', 20, 80, 100, 21)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    ;verankert den Button "beenden" links und oben und fixiert die Größe
    ;beim Resizen bleibt es dadurch auf seiner Position am rechten Rand
    EndFunc ;==>_CreateGui2

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

    Func _end()
    GUIDelete($idGui2)
    GUIDelete($idGui1)
    Exit
    EndFunc ;==>_end

    [/autoit]

    viel Spass damit,

    Edit: Skript angepasst

    autoBert

  • "Produktfinder" brauche Hilfe wegen Checkboxen und Eingabefelder

    • autoBert
    • 18. November 2010 um 15:41

    Hallo spiesi,

    hier ein Beispiel mit 2 Comboboxen und einer CSV-Datei

    Skript
    [autoit]

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

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

    Const $sCSV = @ScriptDir & "\2cbo.TXT"
    Const $sElect = "bitte auswählen"
    Dim $a_sCSV, $aSplit, $scboChr = ""
    _FileReadToArray($sCSV,$a_sCSV)
    Dim $aCSV[$a_sCSV[0]][2]
    for $i = 1 to UBound($a_sCSV) - 1
    ConsoleWrite($i & $a_sCSV[$i] & @CRLF)
    $aSplit = StringSplit($a_sCSV[$i],";")
    if not StringInStr($scboChr,$aSplit[1]) Then $scboChr &= $aSplit[1] & "|"
    $aCSV[$i-1][0] = $aSplit[1]
    $aCSV[$i-1][1] = $aSplit[2]
    Next
    ConsoleWrite($scboChr & @CRLF)

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

    $hGui = GUICreate("2 Comboboxen aus 1er CSV", 250, 120, 302, 218)
    $hcboChr = GUICtrlCreateCombo($sElect, 8, 8, 200, 25)
    GUICtrlSetData(-1,$scboChr)
    $hcboChrNr = GUICtrlCreateCombo("",8,35,200,25)
    $hbtnExit = GUICtrlCreateButton("Be&enden", 8, 65)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE, $hbtnExit
    Exit
    Case $hcboChr
    $sVal = GUICtrlRead($hcboChr)
    if $sVal <> $sElect Then
    $aSplit = _ArrayFindAll($aCSV,$sVal,0,0,True,True,0)
    GUICtrlSetData($hcboChrNr,"")
    $scboChr = ""
    for $i = 0 to UBound($aSplit) - 1
    $scboChr &= $aCSV[$aSplit[$i]][1] & "|"
    Next
    ConsoleWrite($scboChr & @CRLF)
    GUICtrlSetData($hcboChrNr,$scboChr)
    _GUICtrlComboBox_SetCurSel($hcboChrNr, 0)
    EndIf
    EndSwitch
    WEnd

    [/autoit]

    zum Testen benötigst du noch die im Anhang befindliche Datei,

    mfg autoBert

  • Progressbar

    • autoBert
    • 18. November 2010 um 15:24

    Hallo Scritch,

    schau dir https://autoit.de/index.php?page…3652#post133652 an,

    mfg autoBert

  • "Strg + Alt + Entf" => Passwort ändern Dialog (Windows XP) mit AutoIt aufrufen

    • autoBert
    • 18. November 2010 um 15:11

    Hallo Mr. quickly,

    Zitat von Hilfe zu HotkeySer

    Folgende HotKeys können nicht genutzt werden:

    Strg+Alt+Entf Reserviert von Windows selbst
    F12 Ebenfalls durch Windows reserviert (API)
    Ziffernblock Enter Taste Man sollte stattdessen {Enter} verwenden, da hierbei beide Enter-Tasten abgefangen werden.
    Win+B,D,E,F,L,M,R,U; und Win+Shift+M Reserviert durch Windows
    Anmerkung: Win+B und Win+L könnten nur bei Windows XP und höher reserviert sein.
    Alt, Strg, Shift, Win Dies sind Modifizierungstasten
    Weitere Jede globale Tastenkombination, die mit einer anderen Software definiert wurde, und jede Kombination aus Basistasten, wie '{F1}{F2}', sowie jede Form von '{LALT}' oder '{ALTDOWN}'.

    Alles anzeigen

    es geht also nicht

    Zitat von mr.quickly

    Das klappt aber auf einigen Terminals bei uns nicht.

    schlage vor ihr kauft für diese neue Tastaturen, dann klappt's auch wieder mit diesen Tasten. Im übrigen kann man es afiair vor dem Anmelden ändern,

    mfg autoBert


    mfg

  • "Produktfinder" brauche Hilfe wegen Checkboxen und Eingabefelder

    • autoBert
    • 18. November 2010 um 15:01

    Hallo spiesi,

    natürlich ist das möglich ich würde anstatt von 5 CheckBoxen 1 ComboBox nehmen ist leichter erweiterbar. Wenn du dir meinen Mini-URL-Manager (Link siehe Sigantur) anschaust verstehst du die Technik der ComboBox im Zusammhang mit INI-Dateien.
    Anstelle von INIs kannst d auch eine Datenbank z.B. SQLite verwenden, musst dich dann halt in die SQL Syntax einlesen,

    Nachtrag:

    Zitat

    Danke !
    Wie schaffe ich es das da Script einzelne Angabe, getrennt durch Semikolon (?) nimmt und nicht die ganze Ini ?

    poste doch einmal deine sogenannte INI.

    mfg autoBert

  • Mikrofonlautstärke ändern?

    • autoBert
    • 18. November 2010 um 14:32

    Hallo richie1985,

    genau dieses Problem wurde doch hier gelöst, also aufmerksam die Posts von Micha_He lesen.

    mfg autoBert

  • Controls in (unsichtbare) Gruppe zusammenfassen

    • autoBert
    • 18. November 2010 um 14:18
    Zitat von Großvater

    Edit: OK, ich sehe ein gefülltes und ein leeres $GUI_EX_MDICHILD GUI, das ändert aber nichts daran, dass sie den Fokus klauen.


    also bei mir unter XP prof SP3 nicht,

    mfg autoBert

  • Wav datei an Microfon eingang schicken.

    • autoBert
    • 18. November 2010 um 14:03

    hallo Herbsen,

    wenn es geht und hier vielleicht schon einmal jemand gemacht hat, dann eukalyptus, verwende doch die SuFu bzw. schick ihm eine PN,

    mfg autoBert

  • WinSetOnTop verschwindet

    • autoBert
    • 18. November 2010 um 13:47

    Hallo Ilse,

    WinSetOnTop bringt es ja nur nach vorne, du müsstest aber beim erzegen der GUI den erweiterten Stil $WS_EX_TOPMOST verwenden.

    Edit: Hatte deine Frage falsch verstanden, dachte du meitest Anwendungs-Modal und nicht Systemm-Modal. Davon halte ich nichts, dass jede(r) Programmierer(in) denkt ihr Programm ist das wichtigste, wenn nämlich alle Programme diesen Stil verwenden, kannst du bald nicht mehr vernünftig arbeiten. Er sollte also wirklich nur Systemprogrammen wie z.B.: dem Taskmanager zugestanden werden.

    mfg autoBert

  • Übersetzer

    • autoBert
    • 18. November 2010 um 05:40

    Hallo m-obi,

    hier die Grundlage:

    Zitat von Quelle wikipedia

    Involutorische Chiffren [Bearbeiten]

    Involutorische Chiffren weisen die Eigenart auf, dass der Algorithmus zum Verschlüsseln und zum Entschlüsseln identisch ist. Sie sind damit besonders bequem zu handhaben. Ein einfaches Beispiel aus der Kryptologie ist die Verschiebechiffre ROT13, bei der zur Verschlüsselung jeder Buchstabe um den um 13 Stellen im Alphabet verschobenen Buchstaben ersetzt wird. Die zweimalige Anwendung dieser Methode ergibt eine Verschiebung um 26 Buchstaben und damit wieder den ursprünglichen Klartext. In der Geschichte gab es aber auch wesentlich komplexere involutorische Verschlüsselungsverfahren. Das wohl bekannteste Beispiel ist die deutsche Verschlüsselungsmaschine ENIGMA, die im Zweiten Weltkrieg im Nachrichtenverkehr des deutschen Militärs verwendet wurde.

    Die logische Funktion Exklusives Oder ist ebenfalls selbstinvers und wird daher unter anderem in Verschlüsselungsalgorithmen wie One Time Pad eingesetzt.

    Edit: kannst du bitte ein Wort/Satz nennen, das nicht mehr entschlüsselt werden konnte, alle meine Versuche haben geklappt,

    mfg autoBert

  • Happy Birthday, Techmix

    • autoBert
    • 18. November 2010 um 05:04

    Alles gute Wünsche zum Geburtstag:

    • vor allem Gesundheit
    • viel Erfolg im Job
    • eine schöne Feier mit vielen Geburtstagstorten, vielleicht auch eine wie hier eine wie hier (bei ca. 1. min)

    wünscht dir autoBert

  • Übersetzer

    • autoBert
    • 18. November 2010 um 04:30

    Hallo Kleiner,

    ich hab es so getestet:

    [autoit]

    $sText ="Hier ist eine tolle Implentierung des Cäsar-Chiffres http://www.autoit.de/index.php?page…6455#post196455 ist perfekt"
    Dim $Te = VerEnd_S($sText)
    Dim $Te_ = VerEnd_S($Te)
    ConsoleWrite("Ursprung: " & $sText & @CRLF)
    ConsoleWrite("verschlüsselt: " & $Te & @CRLF)
    ConsoleWrite(@CRLF & @CRLF)
    ConsoleWrite("entschlüsselt: " & $Te_ & @CRLF)
    if $Te_ = $sText Then
    MsgBox(0,"Bravo","Klappt")
    Else
    MsgBox(0,"Sorry","Klappt nicht")
    EndIf

    [/autoit]

    hat geklappt. Ausgabe Scite-Konsole:

    Code
    Ursprung:      Hier ist eine tolle Implentierund des Cäsar-Chiffres http://www.autoit.de/index.php?page=Thread&postID=196455#post196455 ist perfekt
    verschlüsselt: )PRBPKC\PD_    Tx]U\
    
    
    entschlüsselt: Hier ist eine tolle Implentierund des Cäsar-Chiffres http://www.autoit.de/index.php?page=Thread&postID=196455#post196455 ist perfekt

    bei der sehr kurzen Länge des verschlüsselten Strings (sieht in der Konsole anders aus) dachte ich zuerst du hättest einen Packer geschreiben. Daraufhin habe ich mit _InetGetSource einen AutoIt-Thread eingegelesen. Verschlüsseln/entschlüsseln hat auch wieder geklappt, das anschliessende Schreiben in eine Datei hat mich mir dann gezeigt dass deine Daten und die Ursprungsdaten exakt den selben Plattenplatz benötigen.

    mfg autoBert

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™