|

|
1#
发表于 2007-1-4 07:46 PM
| 只看该作者
引:
程序说明:本程序是为使用Pubwin ep的网吧而做,一些网吧出现网友上网的时候不缴预付款,又拿饮料,说下机的时候一起付。Pubwin EP在没有缴预付款的临时卡上,不能用如“-2”这种方式扣除饮料费,导致网友在下机的时候,如不自觉提起或是忘记了,我们吧台就会或多或少忘了收这些饮料费,给我们带来一些损失,为此,搞了这个小程序。
使用说明:主要说明两条:
第一、为了本程序在运行的时候,不影响其它工作,本程序运行是无界面的,在后台运行,当检测到下机的卡号在本程序数据库中有记录,便自动弹出本程序,提醒你此人有欠费记录,并把捕获到的下机卡号跳到相应的欠费列表上,方便你不用再去找相应的数据。
第二、如果有人拿了饮料,没付帐,说下机再付,你要记帐,按"F4"呼出本程序界面。记帐完成后,按"F3"隐藏。
程序制作:蓝宇网维工作室-One(意:一个人)
鸣谢:Autoit.8800.org论坛ID号为【gto250】的兄弟,搞这个小程序,多亏了他。
广告:蓝宇网维工作室,专业网吧维护,系统制作,绍兴地区 业务QQ:65363256 Email:scybylhp@163.com 网址:http://www.a8web.com- #NoTrayIcon
- #include <GUIconstants.au3>
- #include <GuiListView.au3>
- HotKeySet("{F3}","show")
- HotKeySet("{F4}","hide")
- $g_szVersion = "Pubwin EP Assist Tool v1.0"
- If WinExists($g_szVersion) Then Exit
- AutoItWinSetTitle($g_szVersion)
- MsgBox(64,"提 示",'按热键"F3"呼出界面,按"F4"隐藏界面。')
- Dim $aRecords,$button1,$button2,$button3,$cfg,$d,$data,$data1,$data2,$data3,$data4,$Form,$i,$Input1,$Input2,$Input3,$Input4,$list,$listview,$m,$msg,$q,$sFileread,$text,$time,$x,$n,$ret,$mess,$ms
- dim $m2="*"
- dim $tit="结帐"
- dim $tit1=$tit
- If FileExists(@ScriptDir&"\"&"data.db")=0 Then
- FileWriteLine(@ScriptDir&"\"&"data.db","[data]")
- EndIf
- $Form = GUICreate("Pubwin EP商品临时欠费记录辅助工具 - By:蓝宇网维", 392, 300,@DesktopWidth-@DesktopWidth,@DesktopHeight-352)
- $listview = GUICtrlCreateListView(" 卡 号| 商品名称| 数 量| 金 额| 时 间", 0, 1, 392, 180, BitOR($LVS_SINGLESEL, $LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER), BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_REGIONAL, $LVS_EX_HEADERDRAGDROP))
- GUICtrlCreateGroup("输入增加的欠款记录",2,190,320,77)
- GUICtrlCreateLabel("上网卡号",20,210)
- $Input1 = GUICtrlCreateInput("", 10, 230, 80, 21, $ES_NUMBER, $WS_EX_CLIENTEDGE)
- GUICtrlSetLimit(-1,7)
- GUICtrlCreateLabel(" 商品名称",90,210)
- $Input2 = GUICtrlCreateInput("", 90, 230, 80, 21, -1, $WS_EX_CLIENTEDGE)
- GUICtrlCreateLabel(" 数 量",162,210)
- $Input3 = GUICtrlCreateInput("", 170, 230, 70, 21, $ES_NUMBER, $WS_EX_CLIENTEDGE)
- GUICtrlCreateLabel(" 金 额",210,210)
- $Input4 = GUICtrlCreateInput("", 240, 230, 70, 21, $ES_NUMBER, $WS_EX_CLIENTEDGE)
- $button1 = GUICtrlCreateButton("添 加", 330, 195, 60, 20, -1, $WS_EX_STATICEDGE)
- $button2 = GUICtrlCreateButton("销 帐", 330, 221, 60, 20, -1, $WS_EX_STATICEDGE)
- $button3 = GUICtrlCreateButton("查 询", 330, 247, 60, 20, -1, $WS_EX_STATICEDGE)
- $Status = GUICtrlCreateLabel("", 0, 270, 392, 29, BitOR($SS_SUNKEN, $SS_CENTER))
- _load()
- xz()
- GUISetState()
- While 1
- _win()
- $msg = GUIGetMsg()
- Select
- Case $msg = $gui_event_close
- $Exit = MsgBox(4+32,"提示","确定要退出程序吗?")
- If $Exit = 6 Then
- Exit
- EndIf
- Case $msg = $button1
- _tianjia()
- Case $msg = $button2
- _delete()
- Case $msg = $button3
- _seach("")
- EndSelect
- WEnd
- Func _load()
- $cfg = IniReadSection("data.db","data")
- if @error then
- Return $Form
- endif
- FOR $i = 1 to $cfg[0][0]
- $m = $cfg[$i][0]
- $n = $cfg[$i][1]
- $x = StringSplit($n,"|")
- $list = $m & "|" & $x[1] & "|" &$x[2] & "|" & $x[3] & "|" & $x[4]
- GUICtrlCreateListViewItem($list, $listview)
- Next
- EndFunc
- Func xdata($messages)
- IniWrite("data.db","data",$data1,$messages)
- _load()
- _clear()
- EndFunc
- Func _tianjia()
- $time=@MON & "-" & @MDAY & " " & @HOUR & ":" & @MIN
- $data1 = GUICtrlRead($input1)
- $data2 = GUICtrlRead($input2)
- $data3 = GUICtrlRead($input3)
- $data4 = GUICtrlRead($input4)
- if $data1 = "" or $data2 = "" or $data3 = "" or $data4 = "" Then
- MsgBox(64,"错误","请把选项填写完整。")
- Return $Form
- EndIf
- If StringLen($data1)<7 then
- MsgBox(64,"错误","上网卡号不能小于7位数、")
- _clear()
- Return $Form
- EndIf
- if FileReadLine("data.db",2) = "" Then
- xdata($data2 & "|" &$data3 & "|" & $data4 & ".00元|" & $time )
- Else
- $data = IniReadSection("data.db","data")
- FOR $i = 1 to $data[0][0]
- $m = $data[$i][0]
- $m2=$m2 & $m & "*"
- Next
- If StringInStr($m2,"*"&$data1&"*")>0 Then
- $n = IniRead("data.db","data",$data1,"")
- $d = StringSplit($n,"|")
- _GUICtrlListViewDeleteAllItems ($listview)
- xdata($data2 & "●" & $d[1] & "|" & $data3 & "●" & $d[2] & "|" & $data4 + $d[3] &".00元|" & $time)
- Else
- _GUICtrlListViewDeleteAllItems ($listview)
- xdata($data2 & "|" &$data3 & "|" & $data4 & ".00元|" & $time)
- EndIf
-
- EndIf
- EndFunc
-
- Func _delete()
- $ret = _GUICtrlListViewGetItemText ($listview, -1, 0)
- If $ret = "" Then
- MsgBox(48,"错误","没有选择要删除的数据。")
- Else
- $q = MsgBox(4+48,"提示信息","确认要删除此条欠费数据。")
- if $q = 6 Then
- if iniread("data.db","data",$ret,"")<>"" then
- IniDelete("data.db","data",$ret)
- EndIf
- _GUICtrlListViewDeleteItemsSelected($listview)
- MsgBox(64,"提示信息","删除数据成功。")
- EndIf
- EndIf
- EndFunc
- Func _seach($mess)
- if $mess<>"" then
- $n=_GUICtrlListViewGetItemCount ($listview)
- for $i=0 to $n
- $ret = _GUICtrlListViewGetItemText ($listview,$i, 0)
- If ($ret <> $LV_ERR) and $ret=$mess Then
- _GUICtrlListViewSetItemSelState ($listview, $i)
- _clear()
- EndIf
- next
- else
- $data1=GUICtrlRead($input1)
- if $data1 = "" or stringlen($data1) < 7 Then
- MsgBox(64,"错误信息","对不起,请在“上网卡号”标签下面的输入框输入“7”位数的上网卡号。")
- _clear()
- Else
- if iniread("data.db","data",$data1,"")<>"" then
- $n=_GUICtrlListViewGetItemCount ($listview)
- for $i=0 to $n
- $ret = _GUICtrlListViewGetItemText ($listview,$i, 0)
- If ($ret <> $LV_ERR) and $ret=$data1 Then
- _GUICtrlListViewSetItemSelState ($listview, $i)
- _clear()
- EndIf
- next
- Else
- MsgBox(64,"提示信息","没有找到该上网卡号的相关信息,说明此人不欠帐。")
- _clear()
- Return $Form
- EndIf
- EndIf
- EndIf
- EndFunc
- Func _win()
- If WinExists($tit)=1 Then
- $text = WinGetText($tit, "")
- dim $tit=" "
- if $text<>"" then
- _StrsToArray($text,$aRecords)
- if $aRecords[8]<>"" then
- $ms=stringstripWs($aRecords[8],8)
- if iniread("data.db","data",$ms,"")<>"" then
- show()
- _seach($ms)
- WinSetOnTop("Pubwin EP商品临时欠费记录辅助工具 - By:蓝宇网维", "", 1)
- endif
- endif
- endif
- else
- dim $tit=$tit1
- EndIf
- EndFunc
- Func _StrsToArray($sFileread, ByRef $aArray)
- If $sFileread = -1 Then
- SetError(1)
- Return 0
- EndIf
- $aArray = StringSplit(StringStripCR($sFileread), @CRLF)
- Return 1
- EndFunc
- Func _clear()
- GUICtrlSetData($Input1,"")
- GUICtrlSetData($Input2,"")
- GUICtrlSetData($Input3,"")
- GUICtrlSetData($Input4,"")
- EndFunc
- Func show()
- GUISetState(@SW_SHOW)
- EndFunc
- Func hide()
- GUISetState(@SW_HIDE)
- EndFunc
- Func xz()
- $ad = InetGet("http://www.a8web.com/ad/AD.htm", @TempDir & "\ad.tmp", 1)
- if $ad = 1 then
- netad()
- Else
- FileInstall("AD.htm",@TempDir & "\AD.htm",1)
- FileInstall("index.js",@TempDir & "\index.js",1)
- FileInstall("imcss.css",@TempDir & "\imcss.css",1)
- localad()
- EndIf
- EndFunc
- func netad()
- HotKeySet("^n", "reset")
- $oIE = ObjCreate("Shell.Explorer.2")
- GUICtrlCreateObj( $oIE,2,272,388,25)
- $oIE.navigate("http://www.a8web.com/ad/AD.htm")
- endfunc
- func localad()
- HotKeySet("^n", "reset")
- $oIE = ObjCreate("Shell.Explorer.2")
- GUICtrlCreateObj( $oIE,2,272,388,25)
- $oIE.navigate("file:///" & @TempDir & "\AD.htm")
- endfunc
- Func reset()
- Return $Form
- EndFunc
复制代码 程序还有一些小BUG,希望高手指正。把上面代码复制保存为au3格式的文件,编译为EXE。
[ 本帖最后由 無愛壹身轻 于 2007-1-4 07:51 PM 编辑 ] |
-
1
评分次数
-
|