获取input用FileWriteLine写入文本不对[已解决]
本帖最后由 xg911335 于 2010-8-29 23:43 编辑$Form1 = GUICreate("Form1", 362, 93, 192, 114)
$Input1 = GUICtrlCreateInput("""&$a&""-""&$b&""-""&$c&""-""&$d&""", 32, 24, 297, 21)
$Button1 = GUICtrlCreateButton("写入文本", 208, 64, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
dim $a,$b,$c,$d
$a=1
$b=2
$c=3
$d=4
FileWriteLine ("test.txt", GUICtrlRead($Input1))
EndSwitch
WEnd
为什么写入的是"&$a&"-"&$b&"-"&$c&"-"&$d&"而不是1-2-3-4呢?如何实现这样的功能? dim $a,$b,$c,$d
$a=1
$b=2
$c=3
$d=4
这几句应放在$Input1 = GUICtrlCreateInput("""&$a&""-""&$b&""-""&$c&""-""&$d&""", 32, 24, 297, 21)
前面 楼主逻辑不清楚吧!就你的代码来看
"&$a&"-"&$b&"-"&$c&"-"&$d&" 和 1-2-3-4 并没有直接关系啊! 那如何实现这样的功能呢,给个思路或者代码之类的。谢谢 要么做成4个输入框让用户自行分别输入,要么让用户自行使用分隔符 什么时候创建控件的时候默认值可以用未定义值的变量了 研究了半天还是不行。有没有代码给段,我看看。。另外"&$a&"-"&$b&"-"&$c&"-"&$d&"这段我是想可以自定义排列方式。并不一定就是我所固定的方式。也有可能是"&$b&"=-="&$c&"-=="&$a&"==-"&$d&"这样的。 目前为止貌似还没人弄明白你到底想表达什么 本帖最后由 netegg 于 2010-8-20 17:05 编辑
楼主自己慢慢研究吧,语文一直就是弱项,帮不上忙了 我是想让用户通过改变GUICtrlCreateInput("""&$a&""-""&$b&""-""&$c&""-""&$d&""")的内容来排序导出。可以修改ABCD的位置和"-"符号来导出自己想要的格式。如:("""&$c&""=""&$d&""=""&$a&""=""&$b&""")格式,导出是3=4=1=2排序。不知道这次表达好了没。呵呵 $Form1 = GUICreate("Form1", 362, 93, 192, 114)
$Input1 = GUICtrlCreateInput("请输入adcd的格式", 32, 24, 297, 21)
$Button1 = GUICtrlCreateButton("写入文本", 208, 64, 75, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
dim $a,$b,$c,$d
$a=1
$b=2
$c=3
$d=4
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case -3
Exit
Case $Button1
$sr = GUICtrlRead($Input1)
$sr = StringReplace($sr,"a",$a)
$sr = StringReplace($sr,"b",$b)
$sr = StringReplace($sr,"c",$c)
$sr = StringReplace($sr,"d",$d)
FileWriteLine (@DesktopDir&"\test.txt",$sr)
EndSwitch
WEnd将用户输入的abcd依次替换为变量$a,$b,$c,$d LZ肯定是C语言转过来,建议多看看帮助 直接filewrite也可以的啊
后加上换行符 LZ用AU3的时间也不短了,怎么连AU3的语法都写错呢,真不懂
$Input1 = GUICtrlCreateInput("""&$a&""-""&$b&""-""&$c&""-""&$d&""", 32, 24, 297, 21)
这句根本不通啊
{:face (131):} 前两天太忙了,搞得今天才来回帖。我用11楼的方法修改了一下。可以了。不会只能读取数据库里面的第一条数据。
…………………………
$Form1_1 = GUICreate("Form1", 475, 668, 408, 139)
$Input1 = GUICtrlCreateInput("user===pass===ipadd", 56, 560, 398, 21)
…………………………
Func daochu()
Dim $name,$ip,$mac,$sr,$a=0
$sr = GUICtrlRead($Input1)
$file = FileOpen("list.txt", 10)
If $file = -1 Then
MsgBox(0, "错误", "不能打开文件.")
Exit
EndIf
If FileExists($mdb_data_path) Then
$addfld = ObjCreate("ADODB.Connection")
$addfld.Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &$mdb_data_path&";Jet Oledb:Database Password="&$mdb_data_pwd)
$RS =ObjCreate("ADODB.Recordset")
$RS.ActiveConnection = $addfld
$RS.cursorlocation = 3
$RS.Open ("Select "&$T & " From " & $tblname )
$n1 = $RS.RecordCount
If $RS.bof and $RS.eof then
MsgBox(0,"错误","没有数据集")
Else
while Not $RS.eof And Not $RS.bof
if @error =1 Then ExitLoop
$user = $RS.Fields (0).value
$pass = $RS.Fields (1).value
$ipadd = $RS.Fields (3).value
$sr = StringReplace($sr,"user",$user)
$sr = StringReplace($sr,"pass",$pass)
$sr = StringReplace($sr,"ipadd",$ipadd)
MsgBox(0,"1",$sr&$name)
;~ FileWriteLine ($file, $sr)
$rs.movenext
WEnd
MsgBox(0,"提示","导出成功")
EndIf
$rs.close
$addfld.Close
FileClose($file)
Else
MsgBox(0,"错误","被打开的文件不存在")
EndIf
EndFunc
循环里的msgbox一直显示数据库的第一条。。是怎么会事啊?数据库里有几百条记录。第一条是zxc,123456,192.168.0.1循环几百次都是显示这条记录.
页:
[1]