1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Oscar

Beiträge von Oscar

  • Mit Mausclick in TreeviewItem eine Aktion auslösen (GUIOnEventMode)

    • Oscar
    • 17. Oktober 2013 um 18:29

    Beim ListView gibt es viele Dinge, die man auch mit "WM_NOTIFY" realisieren kann (siehe Beispiel zu _GUICtrlListView_Create in der Hilfe).
    Bei den ComboBoxen ist es eher "WM_COMMAND", was einiges möglich macht (siehe Beispiel zu _GUICtrlComboBox_Create in der Hilfe).

  • Hintergrundbild über Browser ändern

    • Oscar
    • 17. Oktober 2013 um 18:21

    Ich denke, dass das machbar ist. Aber die Frage ist, wenn Du schon nicht die Rechte hast das Hintergrundbild zu ändern, ob Du dann das AutoIt-Script ausführen darfst!?
    Und wenn ja, was ist das für eine merkwürdige Rechtevergabe?

    Aber ganz abgesehen davon: für Programmieranfragen haben wir einen Extra-Forumbereich (mit und ohne Gegenleistung).

    Und etwas aus Neugier: Was ist das für eine eigenartige Art Informationen und Telefonnummern zu speichern? ^^

  • Netzlaufwerk komfortfunktion

    • Oscar
    • 17. Oktober 2013 um 14:28

    Bei welchem Browser passiert denn das?
    Bei mir mit Firefox geht das kopieren einwandfrei. :huh:

  • Netzlaufwerk komfortfunktion

    • Oscar
    • 17. Oktober 2013 um 12:05

    Ich weiß nicht wieso Du da ein "OrOr" stehen hast, aber ändere das mal in "Or".

  • Netzlaufwerk komfortfunktion

    • Oscar
    • 17. Oktober 2013 um 11:22

    Hier mal ein kleines Beispiel:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GuiComboBoxEx.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiImageList.au3>
    #include <WindowsConstants.au3>

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

    Global $aAccount = _LogInBox('Netzlaufwerk anmelden', 6, 'Deutsch', False)
    If @error Then
    Exit
    Else
    $ret = DriveMapAdd("x:", "\\192.168.178.1\daten", 1, $aAccount[0], $aAccount[1]) ; Flag = 1 für Persistent mapping
    ConsoleWrite('Returncode: ' & $ret & @CR & 'Error: ' & @error & @CR & 'Extended: ' & @extended & @CR)
    EndIf

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

    #cs
    ======================================================================================================================
    Function Name: _LogInBox($sTitle [, $iMinLen [,$sStartLang [, $bPassVisible=True [, $iXPos=-1 [, $iYPos=-1]]]]])
    Description: Eingabefenster für Benutzername und Passwort
    Parameter(s): $sTitle = Fenstertitel
    optional: $iMinLen = Mindestlänge des Passworts (Standard = keine Mindestlänge)
    optional: $sStartLang = die Sprache auswählen (Standard = Deutsch)
    optional: $bPassVisible = True/False = Passwort sichtbar anzeigen Ja/Nein (Standard = Ja)
    optional: $iXPos = Horizontale Position des Fensters (Standard = zentriert)
    optional: $iYPos = Vertikale Position des Fensters (Standard = zentriert)
    Return Value(s): Array mit 2 Elementen (Benutzername und Passwort)
    Bei "Abbrechen" oder "Schließen" wird @error = 1
    Required: #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiComboBoxEx.au3>
    #include <GuiImageList.au3>
    #include <WindowsConstants.au3>
    Author(s): Oscar (http://www.autoit.de)
    ======================================================================================================================
    #ce
    Func _LogInBox($sTitle, $iMinLen = 0, $sStartLang = 'Deutsch', $bPassVisible = True, $iXPos = -1, $iYPos = -1)
    If $iMinLen < 0 Or $iMinLen = Default Then $iMinLen = 0
    If $sStartLang = -1 Or $sStartLang = Default Then $sStartLang = 'Deutsch'
    If $bPassVisible = -1 Or $bPassVisible = 'Default' Then $bPassVisible = True
    If $iXPos < 0 Or $iXPos = Default Or $iXPos > @DesktopWidth Then $iXPos = -1
    If $iYPos < 0 Or $iYPos = Default Or $iXPos > @DesktopHeight Then $iYPos = -1
    Local $hGui, $hUserLabel, $hUser, $hPass, $hCheck, $hLanguage, $hCancel, $hOk
    Local $iOpt, $sStyle, $sTmp, $aLanguage, $iLanguage, $hImage
    Local $iErr, $sFont = 'Arial', $aOut[2]
    Local $iBGColorInner = 0xBBBBBB, $iBGColorOuter = 0xEEEEEE
    Local $sIconsPath = @ScriptDir & '\icons.icl'
    Local $sLang = 'Dansk|Deutsch|English|Français'
    Local $aTranslation[4][7] = [ _
    ['Brugernavn:' & @CRLF & '(påkrævet)', _ ; Dänisch
    'Password:', _
    @CRLF & '(mindst ' & $iMinLen & ' tegn)', _
    '&Password synlige', _
    'Abonner...', _
    'Annuller', ''], _
    ['Benutzername:' & @CRLF & '(erforderlich)', _ ; Deutsch
    'Passwort:', _
    @CRLF & '(min. ' & $iMinLen & ' Zeichen)', _
    '&Passwort sichtbar', _
    'Anmelden...', _
    'Abbrechen', ''], _
    ['Username:' & @CRLF & '(needed)', _ ; Englisch
    'Password:', _
    @CRLF & '(min. ' & $iMinLen & ' Chars)', _
    '&Password visible', _
    'Log in...', _
    'Cancel', ''], _
    ['Nom:' & @CRLF & '(nécessaire)', _ ; Französisch
    'mot de passe:', _
    @CRLF & '(min. ' & $iMinLen & ' lettre)', _
    '&mot de passe visible', _
    'déclarer...', _
    'Annuler', '']]
    $aLanguage = StringSplit($sLang, '|')
    For $i = 1 To $aLanguage[0]
    If $sStartLang = $aLanguage[$i] Then $iLanguage = $i - 1
    Next
    $iOpt = Opt('GUIOnEventMode', 0)
    $hGui = GUICreate($sTitle, 343, 200, $iXPos, $iYPos, BitOR($WS_SYSMENU, $WS_VISIBLE))
    GUISetIcon(@SystemDir & '\shell32.dll', -212)
    GUISetBkColor($iBGColorOuter)
    GUICtrlCreateLabel('', 5, 5, 325, 120, -1, $WS_EX_CLIENTEDGE)
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUICtrlSetBkColor(-1, $iBGColorInner)
    $hUserLabel = GUICtrlCreateLabel($aTranslation[$iLanguage][0], 12, 17, 90, 35)
    GUICtrlSetFont(-1, 9, 400, 0, $sFont)
    GUICtrlSetBkColor(-1, $iBGColorInner)
    $hUser = GUICtrlCreateInput('', 115, 20, 205, 25)
    GUICtrlSetFont(-1, 10, 400, 0, $sFont)
    If $iMinLen > 0 Then
    $aTranslation[$iLanguage][6] = $aTranslation[$iLanguage][1] & $aTranslation[$iLanguage][2]
    Else
    $aTranslation[$iLanguage][6] = $aTranslation[$iLanguage][1]
    EndIf
    $hPassLabel = GUICtrlCreateLabel($aTranslation[$iLanguage][6], 12, 63 + ($iMinLen = 0) * 6, 100, 35)
    GUICtrlSetFont(-1, 9, 400, 0, $sFont)
    GUICtrlSetBkColor(-1, $iBGColorInner)
    $hPass = GUICtrlCreateInput('', 115, 65, 205, 25)
    GUICtrlSetFont(-1, 10, 400, 0, $sFont)
    GUICtrlSendMsg($hPass, $EM_SETPASSWORDCHAR, Not $bPassVisible * Asc('*'), 0)
    $hCheck = GUICtrlCreateCheckbox($aTranslation[$iLanguage][3], 120, 92, 200, 25)
    GUICtrlSetFont(-1, 9, 400, 0, $sFont)
    GUICtrlSetBkColor(-1, $iBGColorInner)
    If $bPassVisible Then GUICtrlSetState(-1, $GUI_CHECKED)
    $hLanguage = _GUICtrlComboBoxEx_Create($hGui, '', 10, 135, 110, 140, $CBS_DROPDOWNLIST)
    If FileExists($sIconsPath) Then
    $hImage = _GUIImageList_Create(32, 20, 5, 4, 4)
    _GUIImageList_AddIcon($hImage, $sIconsPath, 0, True)
    _GUIImageList_AddIcon($hImage, $sIconsPath, 1, True)
    _GUIImageList_AddIcon($hImage, $sIconsPath, 2, True)
    _GUIImageList_AddIcon($hImage, $sIconsPath, 3, True)
    _GUICtrlComboBoxEx_SetImageList($hLanguage, $hImage)
    EndIf
    _GUICtrlComboBoxEx_SetItemHeight($hLanguage, 0, 25)
    For $i = 1 To $aLanguage[0]
    _GUICtrlComboBoxEx_AddString($hLanguage, $aLanguage[$i], $i-1, $i-1)
    Next
    _GUICtrlComboBoxEx_SetCurSel($hLanguage, $iLanguage)
    $hCancel = GUICtrlCreateButton($aTranslation[$iLanguage][5], 250, 135, 80, 25)
    GUICtrlSetFont(-1, 9, 400, 0, $sFont)
    $hOk = GUICtrlCreateButton($aTranslation[$iLanguage][4], 160, 135, 80, 25, $BS_DEFPUSHBUTTON)
    GUICtrlSetFont(-1, 9, 400, 0, $sFont)
    GUICtrlSetState(-1, $GUI_DISABLE)
    WinSetOnTop($hGui, '', 1)
    GUICtrlSetState($hUser, $GUI_FOCUS)
    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE, $hCancel
    $iErr = 1
    ExitLoop
    Case $hCheck
    GUICtrlSendMsg($hPass, $EM_SETPASSWORDCHAR, Not BitAND(GUICtrlRead($hCheck), $GUI_CHECKED) * Asc('*'), 0)
    GUICtrlSetState($hPass, $GUI_FOCUS)
    Case $hOk
    $aOut[0] = GUICtrlRead($hUser)
    $aOut[1] = GUICtrlRead($hPass)
    ExitLoop
    EndSwitch
    If Not _GUICtrlComboBoxEx_GetDroppedState($hLanguage) Then
    If _GUICtrlComboBoxEx_GetCurSel($hLanguage) <> $iLanguage Then
    $iLanguage = _GUICtrlComboBoxEx_GetCurSel($hLanguage)
    If $iMinLen > 0 Then
    $aTranslation[$iLanguage][6] = $aTranslation[$iLanguage][1] & $aTranslation[$iLanguage][2]
    Else
    $aTranslation[$iLanguage][6] = $aTranslation[$iLanguage][1]
    EndIf
    GUICtrlSetData($hUserLabel, $aTranslation[$iLanguage][0])
    GUICtrlSetData($hPassLabel, $aTranslation[$iLanguage][6])
    GUICtrlSetData($hCheck, $aTranslation[$iLanguage][3])
    GUICtrlSetData($hCancel, $aTranslation[$iLanguage][5])
    GUICtrlSetData($hOk, $aTranslation[$iLanguage][4])
    GUICtrlSetState($hUser, $GUI_FOCUS)
    EndIf
    EndIf
    If GUICtrlRead($hUser) <> '' And StringLen(GUICtrlRead($hPass)) >= $iMinLen Then
    If BitAND(GUICtrlGetState($hOk), $GUI_DISABLE) Then GUICtrlSetState($hOk, $GUI_ENABLE)
    Else
    If BitAND(GUICtrlGetState($hOk), $GUI_ENABLE) Then GUICtrlSetState($hOk, $GUI_DISABLE)
    EndIf
    WEnd
    Opt('GUIOnEventMode', $iOpt)
    GUIDelete($hGui)
    Return SetError($iErr, 0, $aOut)
    EndFunc ;==>_LogInBox

    [/autoit]
  • Netzlaufwerk komfortfunktion

    • Oscar
    • 17. Oktober 2013 um 10:38

    Mist! Bei "1" muss das Script noch erweitert werden. Nimm mal das:

    [autoit]


    ; Verbindet Laufwerk X mit \\192.168.178.1\daten, wobei der Benutzer "user" mit dem Passwort "passwort" benutzt werden soll
    DriveMapAdd("X:", "\\192.168.178.1\daten", 0, "user", "passwort")
    ConsoleWrite('Error: ' & @error & @CR & 'Extended: ' & @extended & @CR)

    [/autoit]
  • Netzlaufwerk komfortfunktion

    • Oscar
    • 17. Oktober 2013 um 10:23

    Drück mal in SciTE die Taste F8 (um Konsolen-Output anzuzeigen) und starte dann das Script.
    In dem Output-Feld muss nun eine Zahl ausgegeben werden. Das ist die Fehlernr.

  • Netzlaufwerk komfortfunktion

    • Oscar
    • 17. Oktober 2013 um 10:15

    Ich hatte gemeint, dass Du die Ausgabe der Konsole posten sollst, damit man sieht, welcher Fehler aufgetreten ist.

  • Netzlaufwerk komfortfunktion

    • Oscar
    • 17. Oktober 2013 um 10:03

    Füge mal ein:

    [autoit]

    ConsoleWrite(@error & @CR)

    [/autoit]


    hinter die "DriveMapAdd(...)"-Zeile ein und poste das Ergebnis.

  • Statusleiste vom Internetexplorer auslesen ?

    • Oscar
    • 15. Oktober 2013 um 19:30

    Stimmt, das ist dann noch einfacher. :rolleyes::thumbup:

  • Statusleiste vom Internetexplorer auslesen ?

    • Oscar
    • 15. Oktober 2013 um 17:25

    Vielleicht so:

    Spoiler anzeigen
    [autoit]


    #include <IE.au3>
    Global $sStatus = '', $sCheck = ''
    $hGui = GUICreate('Test', 300, 200)
    GUICtrlCreateLabel('Fenster schließen zum beenden.', 5, 20, 290, 20)
    GUISetState()
    _IECreate('www.autoit.de')
    Do
    $sStatus = ControlGetText('Portal - AutoIt.de', '', '[CLASS:msctls_statusbar32; INSTANCE:1]')
    If $sStatus <> $sCheck Then
    $sCheck = $sStatus
    ToolTip($sStatus, Default, Default, 'Statuszeile:', 1, 1)
    EndIf
    Until GUIGetMsg() = -3
    Exit

    [/autoit]
  • REGREAD Problem - Key vorhanden ?

    • Oscar
    • 14. Oktober 2013 um 17:14

    RegRead geht wohl davon aus, dass der Key vorhanden ist. Beim weglassen des Wertes wird dann nicht auf Vorhandensein des Keys geprüft.
    Du kannst aber mit RegEnumVal testen ob es den Key gibt:

    [autoit]


    Local $regvar = RegEnumVal('HKEY_LOCAL_MACHINE\SOFTWARE\7-Zip', 1); - nur Beispiel Key
    If $regvar = '' Then
    MsgBox(4096, "Testbox", "Der Reg-Key ist nicht vorhanden !!!")
    Else
    MsgBox(4096, "Testbox", "Der Reg-Key: '" & $regvar & "' ist vorhanden")
    EndIf

    [/autoit]
  • Wie Kann ich diesen Script im Hintergrund ausführen?

    • Oscar
    • 13. Oktober 2013 um 19:13

    Schön, aber dabei werden wir nicht mehr helfen. Das musst Du schon allein hinkriegen oder Dir ein anderes Ziel aussuchen.
    [close]

  • Laufwerksbuchstabe mit Seriennummer in Verbindung bringen

    • Oscar
    • 12. Oktober 2013 um 16:34

    AutoRun haben doch die meisten ausgeschaltet (Virengefahr).
    Ich würde das von Schnitzel verwenden, aber nicht in einer permanenten Schleife, sondern die Erkennung Windows überlassen und dann den Event registrieren:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>

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

    Global Const $WM_DEVICECHANGE = 0x0219 ; Notifies an application of a change to the hardware configuration of a device or the computer.
    Global Const $DBT_DEVICEARRIVAL = 0x8000 ; A device or piece of media has been inserted and is now available.
    Global Const $DBT_DEVICEREMOVECOMPLETE = 0x8004 ; A device or piece of media has been removed.

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

    ;~ ConsoleWrite(DriveGetSerial('G:') & @CR)
    Global $iSerial = 692753667 ; <- Die vorher ermittelte Seriennummer des gesuchten Laufwerks
    Global $sDriveLetter = ''

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

    $hGui = GUICreate('Automatische Laufwerkserkennung', 380, 200)
    $idSerialDriveFound = GUICtrlCreateDummy()
    $idSerialDriveLetter = GUICtrlCreateLabel('Laufwerksbuchstabe = "-"', 10, 10, 260, 20)
    GUISetState()
    GUIRegisterMsg($WM_DEVICECHANGE, 'MY_WM_DEVICECHANGE')

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

    While True
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit
    Case $idSerialDriveFound
    $sDriveLetter = _ReadDrives()
    GUICtrlSetData($idSerialDriveLetter, 'Laufwerksbuchstabe = "' & $sDriveLetter & '"')
    EndSwitch
    WEnd

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

    Func MY_WM_DEVICECHANGE($hWnd, $Msg, $wParam, $lParam)
    #forceref $hWnd, $Msg, $lParam
    Switch $wParam
    Case $DBT_DEVICEARRIVAL
    ConsoleWrite('A device or piece of media has been inserted and is now available.' & @CR)
    GUICtrlSendToDummy($idSerialDriveFound)
    Case $DBT_DEVICEREMOVECOMPLETE
    ConsoleWrite('A device or piece of media has been removed.' & @CR)
    GUICtrlSendToDummy($idSerialDriveFound)
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>MY_WM_DEVICECHANGE

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

    Func _ReadDrives()
    Local $aDrives = DriveGetDrive('REMOVABLE')
    If @error Then Return SetError(1, 0, '-')
    For $i = 1 To $aDrives[0]
    If DriveGetSerial($aDrives[$i]) = $iSerial Then Return SetError(0, 0, StringUpper($aDrives[$i]))
    Next
    Return SetError(2, 0, '-')
    EndFunc ;==>_ReadDrives

    [/autoit]
  • _HTML_named_entities2Unicode

    • Oscar
    • 11. Oktober 2013 um 19:44

    Habe Deinen Tip mal umgesetzt. :thumbup:
    Fleißarbeit war das eigentlich nicht. Habe eine Seite aus dem Internet mit AutoIt ausgelesen, bearbeitet und das Array erzeugen lassen. :D

  • _HTML_named_entities2Unicode

    • Oscar
    • 11. Oktober 2013 um 19:32

    Hier mal eine kleine Funktion zum umwandeln der von HTML stammenden "named entities" oder "benannte Zeichen" in Unicode-Zeichen.

    Spoiler anzeigen
    [autoit]


    $sText = 'K&auml;se &Auml;pfel &Ouml;l &Uuml;berfall F&uuml;&szlig;e 450&euro;'
    $sText = _HTML_named_entities2Unicode($sText)
    ConsoleWrite($sText & @CR)

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

    Func _HTML_named_entities2Unicode($sText)
    Local $aHTML_Entities[251][2] = [ _
    ["Acirc", 194],["acirc", 226],["acute", 180],["AElig", 198],["aelig", 230],["Agrave", 192],["agrave", 224],["alefsym", 8501], _
    ["Alpha", 913],["alpha", 945],["amp", 38],["and", 8743],["ang", 8736],["apos", 39],["Aring", 197],["aring", 229], _
    ["asymp", 8776],["Atilde", 195],["atilde", 227],["Auml", 196],["auml", 228],["bdquo", 8222],["Beta", 914],["beta", 946], _
    ["brvbar", 166],["bull", 8226],["cap", 8745],["Ccedil", 199],["ccedil", 231],["cedil", 184],["cent", 162],["Chi", 935], _
    ["chi", 967],["circ", 710],["clubs", 9827],["cong", 8773],["copy", 169],["crarr", 8629],["cup", 8746],["curren", 164], _
    ["Dagger", 8225],["dagger", 8224],["dArr", 8659],["darr", 8595],["deg", 176],["Delta", 916],["delta", 948],["diams", 9830], _
    ["divide", 247],["Eacute", 201],["eacute", 233],["Ecirc", 202],["ecirc", 234],["Egrave", 200],["egrave", 232],["empty", 8709], _
    ["emsp", 8195],["ensp", 8194],["Epsilon", 917],["epsilon", 949],["equiv", 8801],["Eta", 919],["eta", 951],["ETH", 208], _
    ["eth", 240],["Euml", 203],["euml", 235],["euro", 8364],["exist", 8707],["fnof", 402],["forall", 8704],["frac12", 189], _
    ["frac14", 188],["frac34", 190],["frasl", 8260],["Gamma", 915],["gamma", 947],["ge", 8805],["gt", 62],["hArr", 8660], _
    ["harr", 8596],["hearts", 9829],["hellip", 8230],["Iacute", 205],["iacute", 237],["Icirc", 206],["icirc", 238],["iexcl", 161], _
    ["Igrave", 204],["igrave", 236],["image", 8465],["infin", 8734],["int", 8747],["Iota", 921],["iota", 953],["iquest", 191], _
    ["isin", 8712],["Iuml", 207],["iuml", 239],["Kappa", 922],["kappa", 954],["Lambda", 923],["lambda", 955],["lang", 9001], _
    ["laquo", 171],["lArr", 8656],["larr", 8592],["lceil", 8968],["ldquo", 8220],["le", 8804],["lfloor", 8970],["lowast", 8727], _
    ["loz", 9674],["lrm", 8206],["lsaquo", 8249],["lsquo", 8216],["lt", 60],["macr", 175],["mdash", 8212],["micro", 181], _
    ["middot", 183],["minus", 8722],["Mu", 924],["mu", 956],["nabla", 8711],["nbsp", 160],["ndash", 8211],["ne", 8800], _
    ["ni", 8715],["not", 172],["notin", 8713],["nsub", 8836],["Ntilde", 209],["ntilde", 241],["Nu", 925],["nu", 957], _
    ["Oacute", 211],["oacute", 243],["Ocirc", 212],["ocirc", 244],["OElig", 338],["oelig", 339],["Ograve", 210],["ograve", 242], _
    ["oline", 8254],["Omega", 937],["omega", 969],["Omicron", 927],["omicron", 959],["oplus", 8853],["or", 8744],["ordf", 170], _
    ["ordm", 186],["Oslash", 216],["oslash", 248],["Otilde", 213],["otilde", 245],["otimes", 8855],["Ouml", 214],["ouml", 246], _
    ["para", 182],["part", 8706],["permil", 8240],["perp", 8869],["Phi", 934],["phi", 966],["Pi", 928],["pi", 960], _
    ["piv", 982],["plusmn", 177],["pound", 163],["Prime", 8243],["prime", 8242],["prod", 8719],["prop", 8733],["Psi", 936], _
    ["psi", 968],["quot", 34],["radic", 8730],["rang", 9002],["raquo", 187],["rArr", 8658],["rarr", 8594],["rceil", 8969], _
    ["rdquo", 8221],["real", 8476],["reg", 174],["rfloor", 8971],["Rho", 929],["rho", 961],["rlm", 8207],["rsaquo", 8250], _
    ["rsquo", 8217],["sbquo", 8218],["Scaron", 352],["scaron", 353],["sdot", 8901],["sect", 167],["shy", 173],["Sigma", 931], _
    ["sigma", 963],["sigmaf", 962],["sim", 8764],["spades", 9824],["sub", 8834],["sube", 8838],["sum", 8721],["sup", 8835], _
    ["sup1", 185],["sup2", 178],["sup3", 179],["supe", 8839],["szlig", 223],["Tau", 932],["tau", 964],["there4", 8756], _
    ["Theta", 920],["theta", 952],["thetasym", 977],["thinsp", 8201],["THORN", 222],["thorn", 254],["tilde", 732],["times", 215], _
    ["trade", 8482],["Uacute", 218],["uacute", 250],["uArr", 8657],["uarr", 8593],["Ucirc", 219],["ucirc", 251],["Ugrave", 217], _
    ["ugrave", 249],["uml", 168],["upsih", 978],["Upsilon", 933],["upsilon", 965],["Uuml", 220],["uuml", 252],["weierp", 8472], _
    ["Xi", 926],["xi", 958],["Yacute", 221],["yacute", 253],["yen", 165],["Yuml", 376],["yuml", 255],["Zeta", 918], _
    ["zeta", 950],["zwj", 8205],["zwnj", 8204]]
    For $i = 0 To UBound($aHTML_Entities) - 1
    $sText = StringReplace($sText, '&' & $aHTML_Entities[$i][0] & ';', ChrW($aHTML_Entities[$i][1]), 0, 1)
    Next
    Return $sText
    EndFunc ;==>_HTML_named_entities2Unicode

    [/autoit]

    Edit: Den Tip von AspirinJunkie umgesetzt. Danke!

  • "Mehrere ComboBox-Controls, selbe Liste?" & "ComboBox: Einzelne Einträge deaktivieren?"

    • Oscar
    • 9. Oktober 2013 um 19:27

    Habe das Beispiel mal erweitert, um das besser testen zu können. Ich denke mal, Du meinst sowas:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>

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

    Global $aCombo[4], $aInhalt[9] = ["Default", "Inhalt 1", "Inhalt 2", "Inhalt 3", "Inhalt 4", "Inhalt 5", "Inhalt 6", "Inhalt 7", "Inhalt 8"];hier folgen (in $aInhalt) weitere Inhalte

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

    $hGui = GUICreate("ComboBox-Problematik")
    $aCombo[0] = GUICtrlCreateCombo("Box 1", 5, 10, 75, 25)
    $aCombo[1] = GUICtrlCreateCombo("Box 2", 5, 40, 75, 25)
    $aCombo[2] = GUICtrlCreateCombo("Box 2", 5, 70, 75, 25)
    $aCombo[3] = GUICtrlCreateCombo("Box 2", 5, 100, 75, 25)
    ;hier folgen weitere ComboBox-Controls (daher im folgenden allgemeine Schreibweisen)
    GUISetState(@SW_SHOW)

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

    Global $sComboDefault = ''
    For $i = 0 To UBound($aInhalt) - 1
    $sComboDefault &= $aInhalt[$i] & '|'
    Next
    $sComboDefault = StringTrimRight($sComboDefault, 1)
    _SetComboStart($sComboDefault, $aInhalt[0])

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

    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $aCombo[0] To $aCombo[UBound($aCombo)-1];s. Kommentar oben
    _ComboBoxUpdate($msg)
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

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

    Func _ComboBoxUpdate($msg);diese Funktion soll optimiert werden
    Local $sValue, $sDefault, $sComboTmp
    For $i = 0 To UBound($aCombo) - 1
    $sComboTmp = $sComboDefault & '|'
    For $j = 0 To UBound($aCombo) - 1
    If $i <> $j Then
    $sValue = GUICtrlRead($aCombo[$j])
    If $sValue <> $aInhalt[0] Then $sComboTmp = StringReplace($sComboTmp, $sValue & '|', '', 1)
    EndIf
    Next
    $sComboTmp = StringTrimRight($sComboTmp, 1)
    $sDefault = GUICtrlRead($aCombo[$i])
    GUICtrlSetData($aCombo[$i], '')
    GUICtrlSetData($aCombo[$i], $sComboTmp, $sDefault)
    Next
    EndFunc ;==>_ComboBoxUpdate

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

    Func _SetComboStart($sText, $sDefault)
    For $i = 0 To UBound($aCombo) - 1
    GUICtrlSetData($aCombo[$i], '')
    GUICtrlSetData($aCombo[$i], $sText, $sDefault)
    Next
    EndFunc ;==>_SetComboStart

    [/autoit]
  • 2 GUI's und Child

    • Oscar
    • 9. Oktober 2013 um 17:42

    Allein der Child-Parameter führt nicht automatisch zur Sperrung des Parent-Fensters. Das wäre ja auch nicht gut, weil man gerade das oft nicht haben will.
    Ich denke, Du (reeky) wirst um die Benutzung der zwei Befehle nicht herumkommen.

  • "Mehrere ComboBox-Controls, selbe Liste?" & "ComboBox: Einzelne Einträge deaktivieren?"

    • Oscar
    • 9. Oktober 2013 um 17:38

    Es wäre hilfreich, wenn Du ein funktionsfähiges Beispiel-Script posten würdest, damit man sieht, welche Funktionalität Du Dir wünscht.
    Allein aus Deiner Beschreibung kann ich mir das gerade nicht zusammenreimen.

  • [PROJEKT] Automatisierter Download und Verarbeitung von Audiodateien

    • Oscar
    • 5. Oktober 2013 um 17:41

    Hier mal eine Möglichkeit:

    Spoiler anzeigen
    [autoit]


    #include <Array.au3>
    $sLogfile = @ScriptDir & '\logfile.txt'
    $sDelDate = '20131004' ; <- Datum im Format: YYYYMMDD, alle Einträge vor diesem Datum werden gelöscht
    $aLogData = _DeleteByDate($sLogfile, $sDelDate)
    _ArrayDisplay($aLogData)

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

    Func _DeleteByDate($sLogfile, $sDelDate)
    Local $sData = FileRead($sLogfile)
    If @error Then Return SetError(1, 0, '')
    Local $aLines = StringRegExp($sData, '\[\d{2}\.\d{2}\.\d{4}/\d{2}\:\d{2}\:\d{2}\].+', 3)
    If Not IsArray($aLines) Then Return SetError(2, 0, '')
    For $i = UBound($aLines) - 1 To 0 Step -1
    If _GetDate($aLines[$i]) < $sDelDate Then _ArrayDelete($aLines, $i)
    Next
    Return $aLines
    EndFunc ;==>_DeleteByDate

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

    Func _GetDate($sLine)
    Return StringRegExpReplace($sLine, '\[(\d{2})\.(\d{2})\.(\d{4})/\d{2}\:\d{2}\:\d{2}\].+', '$3$2$1') ; <- umwandeln nach YYYYMMDD
    EndFunc ;==>_GetDate

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