Hi,
aber franzp deine Lösung ist irgendwie falsch.
Das Programm soll ja das markierte Item abspielen lassen. Bei dir Spielt er einfach immer das erste. Abgesehen davon kann man mit der Stringmid-Funktion auch keine Zahlen eingeben die mehr als 3 Stellen haben.
Wenn dann so, ... oder so ähnlich :D:
Spoiler anzeigen
#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1)
[/autoit] [autoit][/autoit] [autoit]$b_form = GUICreate("Test", 195, 130, 193, 125)
GUISetOnEvent($GUI_EVENT_CLOSE, "Close")
$b_list = GUICtrlCreateListView("Button|Frequenz|Delay", 8, 8, 179, 86)
GUICtrlSendMsg(-1, 0x101E, 0, 50)
GUICtrlSendMsg(-1, 0x101E, 1, 75)
GUICtrlSendMsg(-1, 0x101E, 2, 50)
$b_list_item = GUICtrlCreateListViewItem("b_1|120|100", $b_list)
$b_button = GUICtrlCreateButton("Beep", 8, 96, 179, 25, 0)
GUICtrlSetOnEvent(-1, "_Beep")
GUISetState(@SW_SHOW)
While 1
Sleep(100)
WEnd
Func Close()
Exit
EndFunc ;==>Close
Func _Beep()
$freq = GUICtrlRead(GUICtrlRead($b_list))
If IsString($freq) Then
$string = StringSplit($freq, "|")
Beep($string[2], $string[3])
EndIf
EndFunc ;==>_Beep
Ich wette jetzt kommt Oscar und sagt mir, dass man das auch mit StringRegExp machen kann .
Ich hab das nur immer noch nicht komplett kapiert .