Ich setz es ja auf das UpDown und nich auf das Input
Beiträge von Schnitzel
-
-
Oh BugFix irrt sich. (Oder ich mich, aber ich hab n Beispiel^^)
[autoit]#include <GUIConstantsEx.au3>
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
#include <WindowsConstants.au3>$title = "My GUI UpDown"
[/autoit][autoit][/autoit][autoit]
GUICreate($title, -1, -1, -1, -1, $WS_SIZEBOX)$input = GUICtrlCreateInput("2", 10, 10, 50, 20)
[/autoit][autoit][/autoit][autoit]
$updown = GUICtrlCreateUpdown($input)
GUICtrlSetLimit($updown, 100, 1)GUISetState()
[/autoit][autoit][/autoit][autoit]While 1
[/autoit]
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
WEndSo lässt sich eine zahlenmäßige Begrenzung setzen
-
Geht ganz einfach mit ner Funktion von BugFix ( Zahl (Int, Float) in Tausendergruppierung ausgeben, Währungsformatierung
Spoiler anzeigen
[autoit]$var = 1467113851
[/autoit]
ConsoleWrite($var & @CRLF)
ConsoleWrite(_NumberFormatThousand($var) & @CRLF)
Func _NumberFormatThousand($vNumber, $ret='DE') ; bis 18 Vorkommastellen
Local $sOut = '', $a = StringRegExp(StringReplace($vNumber, '.', ','), "(-?\d{1,3})(\d{3})?(\d{3})?(\d{3})?(\d{3})?(\d{3})?(?:\Z|(,\d+))", 3)
For $i = 0 To UBound($a) -1
If $a[$i] <> '' Then $sOut &= '.' & $a[$i]
Next
If $ret <> 'DE' Then Return StringTrimLeft(StringReplace(StringReplace($sOut, '.', ','), ',,', '.'), 1)
Return StringTrimLeft(StringReplace($sOut, '.,', ','), 1)
EndFunc -
Geht abbonieren der Foren nicht?
-
-
Weil du ja auch indexe rauslöscht.
Eleganteste Lösung wäre die For schleife umzubauen
[autoit]
Statt:For $i = 0 To $num
[/autoit]
[autoit]
einfachFor $i = $num To 0 Step -1
[/autoit] -
Das was du per RegEx rausfilterst ist ja nur text. um daraus nen link zu machen brauchst du entweder ein Format das Links unterstützt ( wie htm) oder aber du bastelst dir selber was.
Einfach shellexecute's auf die Controls legen...
-
Wer wechselt denn die Ordner?
Was genau soll das script später mal machen?
Suchst du evtl rekursive Dateilistung? -
Natürlich kann man. Einfach Listviewitems (oder was auch immer) anhand der Strings im Array erstellen.
Wo liegt das Problem?Edit:
Zitathm ich dachte \w+
Was für was steht findest du in der Hilfe -
Nein das Pattern is falsch. Zumindest für das was du vermutlich willst
Nach href= kommt ein " welches mit \w aber nich berücksichtigt wird.Brauchst dus vllt so in der art?
Spoiler anzeigen
[autoit]#include <array.au3>
[/autoit] [autoit][/autoit] [autoit]$sSource= BinaryToString(inetread("http://www.hunde.de/hund/hunderassen/index.html",8),4)
[/autoit] [autoit][/autoit] [autoit]$arrayfilter = StringRegExp($sSource, '(?U)href=\"(.*)"', 3)
[/autoit]
MsgBox(0,"",$arrayfilter)
_ArrayDisplay($arrayfilter, "Array Auswertung") -
Generell bin ich immer dafür die ID's der Items in nem Array zu speicher.
Lösung wäre z.B. so:Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$Form1 = GUICreate("Form1", 267, 172, 192, 114)
[/autoit] [autoit][/autoit] [autoit]
$ListView1 = GUICtrlCreateListView("spalte1 |spalte2 ", 8, 8, 250, 150)
GUISetState(@SW_SHOW)Dim $listviewitems[10]
[/autoit] [autoit][/autoit] [autoit]For $a = 0 To 9
[/autoit] [autoit][/autoit] [autoit]
$listviewitems[$a] = GUICtrlCreateListViewItem($a & "|" & $a, $ListView1)
NextMsgBox(1, "halt1", "pause")
[/autoit] [autoit][/autoit] [autoit]GUICtrlSetData($listviewitems[1], "test|test");<<<<<<<<< hier lag mein Problem
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitEndSwitch
[/autoit]
WEnd -
Jup im FF gibts ne Option: in neuem Tab statt in neuem Fenster öffnen
oder so ähnlich^^ -
Geht bestimmt auch einfacher aber so funktionierts:
[1-7]\.[0-3]\d{2}
-
Wenn man das wirklich verstecken will, braucht man andere Mechanismen, aber ich denke, die gehören nicht hierher.
Sry aber damit hast du selbst bestätigt, dass das ein sinnlos-Post war...
Thema is ja sowieso bereits gelöst
-
Autoit Programme kannst du nie gut gegen weitergabe schützen.
Vor allem schon weil es so einfach ist sie zu decompilieren. Aber das wurde schon in genügend Threads erklärt, einfach dannach suchen.Natürlich kannst du dir irgendwo ne Datenbank zulegen wo du dann Benutzername und Passwort einträgst. Und dann kannste mit deinem Skript die Daten vom User eingeben lassen und wenn sie nicht stimmen beendet das Programm. Mit speichern der MAC Adresse kannste sogar sicherstellen, dass nicht mehrere User die gleichen Logindaten verwenden.
Aber wie gesagt:
Schützen lassen sich deine Skripte nicht effektiv!!! -
Ich hab jetzt mal nur versucht ne RegEx zu bauen, herraus kam das:
Spoiler anzeigen
[autoit]#include <Array.au3>
[/autoit] [autoit][/autoit] [autoit]
Global $NBR[4] = ["5f6874gboqvvcf455738jse6h","169pp798bnm6n7143bc74","2998b0gtzu4fjj88h44nss3m122n97411","144jhdn849myqtz67cm5mm3"]$String = 'Entry = DName: "File/BrushP.bsh", Radio: "1.789", NBR_Call: "5f6874gboqvvcf455738jse6h", MAG: true, config: "/config.cfg", profile: 0' & @CRLF & _
[/autoit] [autoit][/autoit] [autoit]
'radio: "33.4", config: "/config.cfg", profile: 1, nbr_call: "2998b0gtzu4fjj88h44nss3m122n97411", dname: "File/Filter9.fl", mag: false' & @CRLF & _
'Entry = dname: "File/SquareAA.sqr", radio: "250", nbr_call: "169pp798bnm6n7143bc74", mag: false, config: "/config.cfg", profile: 1' & @CRLF & _
'config: "/config.cfg", profile: 0, NBR_Call: "144jhdn849myqtz67cm5mm3", Radio: "500.750", DName: "File/SetB.set", MAG: true'For $i = 0 To UBound($NBR)-1
[/autoit]
$Filter = StringRegExp($String,'(?i)(?U)(?:DName: "File/(.*)".*' & $NBR[$i] & '|' & $NBR[$i] & '.*DName: "File/(.*))"',1)
ConsoleWrite($Filter[Ubound($Filter)-1] & ";" & $NBR[$i] & @CRLF)
NextLässt sich sicherlich noch optimieren, aber soviel Zeit hab ich jetzt nicht^^
-
Hallo ekrusty,
Dein ansatz ist zwar nicht schlecht funktioniert aber so nicht.
Für dein Problem solltest du Funktionen mit Parametern nutzen.Beispiel
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$rnd = random(1,5,1)
_MyFunc($rnd)Func _MyFunc($iRandom = 0)
[/autoit]
Switch $iRandom
Case 1
msgbox(0,"", "Erster Fall")
Case 2
msgbox(0,"", "Zweiter Fall")
Case 3
msgbox(0,"", "Dritter Fall")
Case 4
msgbox(0,"", "Vierter Fall")
Case 5
msgbox(0,"", "Fünfter Fall")
Case Else
msgbox(0,"", "Keine gültige Zahl angegeben")
Endswitch
Endfunc
Wenn du noch Fragen zum Beispiel hast stell sie einfach hab nur gerade etwas wenig Zeit -
1. Was soll das ganze werden?
2. Wie soll etwas auch funktionieren wenn es überhaupt nicht da ist? -
Das "X" lässt sich deaktivieren indem du auf Styles gehst und dort den Haken bei WS_SYSMENU rausnimmst
[autoit]
Wenn du den Case $GUI_EVENT_CLOSE nich setzt wird die Gui auch nicht mit ESC beendet#include <WindowsConstants.au3>
[/autoit][autoit][/autoit][autoit]$Form1 = GUICreate("Form1", 633, 447, 192, 124, BitOR($WS_MINIMIZEBOX,$WS_CAPTION,$WS_POPUP,$WS_GROUP,$WS_BORDER,$WS_CLIPSIBLINGS))
[/autoit][autoit][/autoit][autoit]
GUISetState(@SW_SHOW)While 1
[/autoit]
Sleep(100)
WEnd -
Sieh dir doch mal die _Date Funktionen in der Hilfe an.
Hier n Beispiel:
[autoit]#include <Date.au3>
[/autoit][autoit][/autoit][autoit]$sDate1 = "2011/05/19 01:00:07"
[/autoit]
$sDate2 = "2011/05/19 14:00:07"
$iDateCalc = _DateDiff('s',$sDate1,$sDate2)
MsgBox(0,"", $iDateCalc)