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

  • Dynamisches TreeViewItem mit Funktion belegen

    • Oscar
    • 29. April 2009 um 15:10

    IDs in einem globalen Array speichern.

  • Icon übers Internet anzeigen lassen

    • Oscar
    • 29. April 2009 um 04:38

    Ich bin mir nicht sicher, ob ich Dich richtig verstanden habe (bei Deinen Texten verstehe ich oftmals gar nichts).
    Aber aus Deinem Script entnehme ich, dass Du den Download mit einer Variablen gestalten willst. Dann aber nicht GuiCtrlRead benutzen, sondern einfach die Variable und den String mit "&" zusammenpacken.
    Außerdem solltest Du schon auf das Ende des Downloads warten (letzter Parameter = 0) und Du musst die Funktion vor dem erstellen des Icons aufrufen.

    [autoit]


    $url ="http://www.boltwared.com"

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

    _start()
    $icon = GUICtrlCreateIcon(@ScriptDir & "\temp\favicon.ico", 0, 415, 12, 16, 16)

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

    Func _start()
    InetGet($url & "/favicon.ico", 'temp\favicon.ico', 1, 0)
    EndFunc

    [/autoit]
  • MsgBoxEx Problem

    • Oscar
    • 28. April 2009 um 17:22

    Das läßt sich, meiner Meinung nach, nicht im MessageLoop-Modus lösen.
    Benutze den OnEventMode und weise allen Buttons ein und dieselbe Funktion zu. Innerhalb der Funktion kannst Du dann mit @GUI_CtrlId den angeklickten Button ermitteln.

  • Icon übers Internet anzeigen lassen

    • Oscar
    • 28. April 2009 um 14:56

    Mit INetGet downloaden und dann von der Datei aus anzeigen lassen.

  • Wie benutzt man ein Slider ?!

    • Oscar
    • 28. April 2009 um 14:48

    Nein, WinSetOnTop setzt das Fenster solange in den Vordergrund bis Du das wieder rückgängig machst.
    $WS_EX_TOPMOST ist lediglich dazu da, dass man das Fenster gleich beim erstellen immer in den Vordergrund packen kann.

  • Dynamisches TreeViewItem mit Funktion belegen

    • Oscar
    • 28. April 2009 um 14:46

    Du musst das Kontextmenü für das gesamte Treeview erstellen.
    Beim Aufruf einer Funktion kannst Du dann den markierten Treeview-Eintrag einlesen.

  • Problem mit udf

    • Oscar
    • 28. April 2009 um 14:41

    Der Fehler liegt darin, dass Du nicht allen $Button-Variablen Werte zuweist, sondern (in dem Beispiel) nur $Button2 und $Button3. Alle anderen $Button-Variablen besitzen einen Leerstring (Vorgabe) und somit trifft bei der Switch-Anweisung gleich das erste Case zu (GUIGetMsg liefert einen Leerstring, weil bisher kein Ereignis eingetreten ist). Das Return sorgt dann gleich für eine Beendigung der Funktion.
    Das ist übrigens noch ein Fehler in Deinem Script. Alle Anweisungen nach Return werden nicht mehr ausgeführt, weil man mit Return bereits die Funktion verläßt.

    Edit: Mist, schon wieder zu langsam. :whistling:

  • 2D-Array - [Zahlen setzen]

    • Oscar
    • 28. April 2009 um 14:24

    Nee, ist doch ok. :)
    Du hast ja recht. Er hat was anderes geschrieben, als er es dann im Script programmiert hat. Jetzt hat er halt beide Lösungen. :D

  • Dateien in eine ListView ziehen

    • Oscar
    • 28. April 2009 um 14:20

    Beispiel im OnEventMode:

    Spoiler anzeigen
    [autoit]


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

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

    Opt('GUIOnEventMode', 1)

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

    $hGui = GUICreate('test', 640, 480, -1, -1, Default, $WS_EX_ACCEPTFILES) ; <- $WS_EX_ACCEPTFILES
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    GUISetOnEvent($GUI_EVENT_DROPPED, '_DragEvent') ; <- Funktion, die aufgerufen wird

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

    $hListview = GUICtrlCreateListView('Filename', 10, 10, 620, 400)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED) ; <- Status für das GUI-Element setzen
    GUICtrlSendMsg($hListview, $LVM_SETCOLUMNWIDTH, 0, 600)

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

    $hStatus1 = GUICtrlCreateLabel(' 0 Files', -2, 462, 124, 18, Default, $WS_EX_CLIENTEDGE)
    $hStatus2 = GUICtrlCreateLabel('', 120, 462, 544, 18, Default, $WS_EX_CLIENTEDGE)
    Global $iFiles = 0
    GUISetState()
    WinSetOnTop($hGui, '', 1)

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

    While True
    Sleep(10)
    WEnd

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

    Func _End()
    Exit
    EndFunc

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

    Func _ListviewEvent()
    Local $iSelect = ControlListView($hGui, '', $hListview, 'GetSelected', 0)
    GUICtrlSetData($hStatus2, ' ' & ControlListView($hGui, '', $hListview, 'GetText', $iSelect, 0))
    EndFunc

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

    Func _DragEvent()
    GUICtrlCreateListViewItem(@GUI_DRAGFILE, $hListview)
    GUICtrlSetOnEvent(-1, '_ListviewEvent')
    $iFiles += 1
    GUICtrlSetData($hStatus1, StringFormat(' %3i File(s)', $iFiles))
    EndFunc

    [/autoit]
  • 2D-Array - [Zahlen setzen]

    • Oscar
    • 28. April 2009 um 13:40

    Schnuffel, ich denke, er wollte das so, weil das in seinem Script so vorgegeben war. ;)

  • 2D-Array - [Zahlen setzen]

    • Oscar
    • 28. April 2009 um 12:42

    Meinst Du so:

    Spoiler anzeigen
    [autoit]


    #include <String.au3>
    #include <array.au3>

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

    Dim $array[18][24]
    $zahlencode = FileRead('zahlen.txt'); Zahlen von oben mit "Enter"
    $zahlencode_ol = StringReplace($zahlencode, @CRLF, "") ; Enter entfernen
    $zahlencode_so = StringSplit($zahlencode_ol, "", 2) ; <-- ",2" damit $zahlencode_so[0] die erste Zahl ist und nicht die Anzahl der Elemente

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

    For $i = 0 To 17
    For $k = 0 To 23
    If $zahlencode_so[($i * 24) + $k] = 9 Then
    $array[$i][$k] = 9
    EndIf
    Next
    Next

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

    _ArrayDisplay($array)

    [/autoit]
  • Wie benutzt man ein Slider ?!

    • Oscar
    • 28. April 2009 um 10:25

    Dazu musst Du Dein Script genau analysieren. Zu welchem Zeitpunkt wieviel Prozent von dem Script abgearbeitet ist und an der Stelle fügst Du dann...

    [autoit]

    GuiCtrlSetData($Progress, x) ; x steht für einen Prozentwert

    [/autoit]


    ...in das Script ein.

  • Wie benutzt man ein Slider ?!

    • Oscar
    • 28. April 2009 um 09:35

    Meinst Du mit "lade balken" eine Progressbar?
    Dann so:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <SliderConstants.au3>

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

    $Form1 = GUICreate("TransGui", 270, 120)
    $Slider1 = GUICtrlCreateSlider(10, 10, 250, 45, BitOR($TBS_TOOLTIPS, $TBS_AUTOTICKS))
    GUICtrlSetLimit(-1, 100, 0)
    $Progress = GUICtrlCreateProgress(10, 60, 250, 25)
    GUISetState(@SW_SHOW)

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

    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Slider1
    $Read = GUICtrlRead($Slider1) ; Ließt den aktuellen wert des Sliders aus.
    GUICtrlSetData($Progress, $Read)
    EndSwitch
    WEnd

    [/autoit]

    Edit: Irgendwas stimmt hier mit dem Thread nicht. Der ganze Aufbau ist "zerstört".
    @FunH@cker: kannst Du mal die Spoiler aus Deiner Sig entfernen. Ich habe den Verdacht, dass das damit zusammenhängt.

  • Hilfe bei Statusprüfung von Checkboxen

    • Oscar
    • 28. April 2009 um 08:07

    Und hier mal ein Beispiel (im OnEvent-Modus):

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    Opt('GUIOnEventMode', 1)
    GUICreate('test', 500, 100)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    Global $ahCheck[7]
    For $i = 0 To 6
    $ahCheck[$i] = GUICtrlCreateCheckbox($i + 1, 20 + $i * 70, 20, 60, 25)
    GUICtrlSetOnEvent(-1, '_Checkbox')
    Next
    GUISetState()

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

    While True
    Sleep(10)
    WEnd

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

    Func _End()
    Exit
    EndFunc

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

    Func _Checkbox()
    If BitAND(GUICtrlRead($ahCheck[0]), $GUI_CHECKED) Then
    For $i = 1 To 6
    GUICtrlSetState($ahCheck[$i], $GUI_DISABLE)
    Next
    Else
    For $i = 1 To 6
    GUICtrlSetState($ahCheck[$i], $GUI_ENABLE)
    Next
    EndIf
    EndFunc

    [/autoit]

    Edit: Ohjee, bin ich heute wieder langsam... :rolleyes:

  • FileReadToArray und Unicode

    • Oscar
    • 28. April 2009 um 07:51

    Naja, das ist doch dann kein Problem:

    [autoit]


    #include <Array.au3>
    $hFile = FileOpen('test.html', 128)
    $sFile = FileRead($hFile)
    FileClose($hFile)
    $array = StringSplit($sFile, @CRLF, 1)
    _ArrayDisplay($array)

    [/autoit]
  • FileReadToArray und Unicode

    • Oscar
    • 28. April 2009 um 07:13

    Ich meinte zwar eigentlich als Datei (zum testen), aber egal, habe ich mit meinen Editor umgewandelt.

    Du musst die Datei mit FileOpen öffnen und als Parameter "128" angeben (siehe Hilfe).

    [autoit]


    $hFile = FileOpen('test.html', 128)
    $sFile = FileRead($hFile)
    FileClose($hFile)
    MsgBox(0,0,$sFile)

    [/autoit]
  • FileReadToArray und Unicode

    • Oscar
    • 28. April 2009 um 06:21

    Kannst Du mal so eine HTML-Datei posten?

  • Wie benutzt man ein Slider ?!

    • Oscar
    • 28. April 2009 um 06:17

    autoBert: Ein paar kleine Änderungen würde ich auch noch vorschlagen:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <SliderConstants.au3>

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

    $Form1 = GUICreate("TransGui", 270, 65)
    $Slider1 = GUICtrlCreateSlider(10, 10, 250, 45, BitOR($TBS_TOOLTIPS, $TBS_AUTOTICKS))
    GUICtrlSetLimit(-1, 255, 80) ; Limit verändert, damit man die Chance hat den Slider "anzufassen"
    GUISetState(@SW_SHOW)
    WinSetTrans($Form1, "", 80) ; Anfangswert setzen

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

    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Slider1
    $Read = GUICtrlRead($Slider1) ; Ließt den aktuellen wert des Sliders aus.
    WinSetTrans($Form1, "", $Read) ; Setzt die Transparenz eines Fensters
    EndSwitch
    WEnd

    [/autoit]


    - Anfangswert einfach vor der Schleife setzen.
    - Abfrage des Sliders in eine Case-Anweisung
    - $TBS_TOOLTIPS damit man den eingestellten Wert sehen kann
    - WinSetTrans funktioniert auch mit dem Handle des Fensters

  • Brauche Hilfe bei einem Befehl und Start des Scriptes.

    • Oscar
    • 27. April 2009 um 20:52

    Illegaler LogIn-Thread! Forenregeln lesen!

    [Thread closed]

  • String bis zu einem speziellen Zeichen verkürzen?

    • Oscar
    • 27. April 2009 um 20:16

    Das Pattern:
    .* = beliebiges Zeichen, beliebig oft
    \\ = Backslash wird gefunden
    die Klammern um diese beiden ist wichtig für die Back-Referenz beim Replace
    das Gute an dem Pattern ist, dass StringReg so "gefrässig" ist und sich mit .* alles schnappt, bis zum letzten Backslash (ist hier so gewollt).
    dem .* außerhalb der Klammern bleibt dann nur noch der Dateiname inkl. Endung

    Das "$1" im Replace ist ein "Platzhalter" für den ersten Klammerausdruck im Pattern.

    Der komplette String wird also durch den Ausdruck in den Klammern ersetzt.

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™