:suspect:
กำหนดให้$xเก็บค่าตัวอักษร+ตัวเลขถ้าครบ20หรือมากกว่าแล้วให้เขียนลงไฟล์
การเขียนลงไฟล์รอบแรกไม่มีปัญหาครับแต่การวนลูปรอบที่2เป็นต้นไปหลังจากที่ตัวแปร$xเก็บครบ20ตัวแล้วมันจะ
เขียนลงไฟล์ทุกรอบไม่มีหยุดเพราะค่าในตัวแปร$xนั้นมากกว่า20ตัว
#include <Misc.au3>
$dll = DllOpen("user32.dll")
$x = ""
While 1
sleep(100)
If _IsPressed("41", $dll) Then
$x = $x &"a"
While _IsPressed("41") = 1
WEnd
ElseIf _IsPressed("42", $dll) Then
$x = $x &"b"
While _IsPressed("42") = 1
WEnd
ElseIf _IsPressed("43", $dll) Then
$x = $x &"c"
While _IsPressed("43") = 1
WEnd
EndIf
$len = StringLen($x)
If $Len >= 20 Then
FileOpen("123.txt", 1)
FileWrite("123.txt", $x&@CRLF)
FileClose("123.txt")
EndIf
WEnd
DllClose($dll)
อยากรู้ว่าหลังจากเขียนค่าจากตัวแปร$xลงไฟล์แล้วมีวิธีไหนบ้างที่ล้างค่าตัวแปร$xให้เหลือ0ทุกครั้งหลังจากเขียนลงไฟล์
ช้วยดูหน่อยครับ :lol!:
กำหนดให้$xเก็บค่าตัวอักษร+ตัวเลขถ้าครบ20หรือมากกว่าแล้วให้เขียนลงไฟล์
การเขียนลงไฟล์รอบแรกไม่มีปัญหาครับแต่การวนลูปรอบที่2เป็นต้นไปหลังจากที่ตัวแปร$xเก็บครบ20ตัวแล้วมันจะ
เขียนลงไฟล์ทุกรอบไม่มีหยุดเพราะค่าในตัวแปร$xนั้นมากกว่า20ตัว
#include <Misc.au3>
$dll = DllOpen("user32.dll")
$x = ""
While 1
sleep(100)
If _IsPressed("41", $dll) Then
$x = $x &"a"
While _IsPressed("41") = 1
WEnd
ElseIf _IsPressed("42", $dll) Then
$x = $x &"b"
While _IsPressed("42") = 1
WEnd
ElseIf _IsPressed("43", $dll) Then
$x = $x &"c"
While _IsPressed("43") = 1
WEnd
EndIf
$len = StringLen($x)
If $Len >= 20 Then
FileOpen("123.txt", 1)
FileWrite("123.txt", $x&@CRLF)
FileClose("123.txt")
EndIf
WEnd
DllClose($dll)
อยากรู้ว่าหลังจากเขียนค่าจากตัวแปร$xลงไฟล์แล้วมีวิธีไหนบ้างที่ล้างค่าตัวแปร$xให้เหลือ0ทุกครั้งหลังจากเขียนลงไฟล์
ช้วยดูหน่อยครับ :lol!: