hta编写的消费记录程序
来源: 阅读:796 次 日期:2016-06-15 09:49:04
温馨提示: 小编为您整理了“hta编写的消费记录程序”,方便广大网友查阅!

将代码复制粘贴到一文本文档中,然后保存,并将该文件后缀名改为:hta,双击即可运行。

代码如下:

<!--////////程序说明/////////====

程序名称:消费记录ver1.1(20070808-20070811).hta

使用说明:将代码复制粘贴到一文本文档中,然后保存,并将该文件后缀名改为:hta,双击即可运行。

作者说明:youxi01,,,版权没有,欢迎盗版!!///////////-->

<!--///////设置题头,编码方式//////-->

<title>消费记录程序</title>

<meta http-equiv=content-type content=text/html; charset=gb2312/>

<!--///////hta标志//////-->

<hta:application

scroll=no

caption=yes

sysmenu=yes/>

<!--///////控制程序部分//////-->

<script language=vbscript>

totalmoney=0 '总消费额

index=-1 '初始化checkbox控件id序号;

flag=0 '定义文件是否改动的标志

set fso=createobject(scripting.filesystemobject)

'///////////////////文件载入时,读取配置文件,定义自身大小、位置////////

sub window_onload

if not (fso.fileexists(consume.ini)) then '不存在配置文件则创建;

fso.createtextfile(consume.ini).close

end if

window.resizeto 638,495 '设置自身大小、位置;

window.moveto 200,100

addrow 0,hoho,2007-1-1,星期二 '先添加一个行。自己都搞不明白,反正用来处理bug;

document.all.nameditem(mytable).rows(1).style.display=none '设置这行不可见;

addrow 0,hoho,2007-1-1,星期二 '再添加一个行。自己都搞不明白,反正用来处理bug;

document.all.nameditem(mytable).rows(2).style.display=none '设置这行不可见;

readfile(consume.ini)

end sub

'//////////////////读取文件//////////////////

function readfile(filename)

set file=fso.opentextfile(filename,1,1)

do while file.atendofline<>true '读文件一直到文件尾部

str=split(file.readline,#) '按#标志分割没行(总共有四个这种标志)

addrow str(1),str(2),str(3),str(4) '添加五个单元格,内容分别为....

loop

end function

'////////////////添加表行,单元格///////////

function addrow(cnum,ctype,cdate,cday)

index=index+1 '序号自加1

set objtable=document.all.nameditem(mytable) '根据id获取对象表格

set newrow = objtable.insertrow() '插入一行

newrow.classname=row_add '设置该行的样式;

newrow.onmouseover=getref(change_bgcolor)

newrow.onmouseout=getref(back_bgcolor)

newrow.onclick=getref(chooseobj)

var=#&cnum&#&ctype&#&cdate&#&cday

str=split(var,#)

str(0)=<input type=checkbox id='delcheck'&index>

for i=0 to 4

set newcell=newrow.insertcell() '插入单元格,并设置单元格的值;

newcell.innerhtml=str(i)

next

totalmoney=totalmoney+clng(cnum) '设置总消费额的值,并定义显示;

consume.innerhtml=消费总额:&totalmoney&元

end function

'///////////////改变对象背景//////////////

function change_bgcolor()

me.classname=new_row_add

end function

'/////////////返回原来背景色//////////////

function back_bgcolor()

me.classname=row_add

end function

'////////////选定该行/////////

function chooseobj()

if me.cells(0).children(0).checked=true then

me.cells(0).children(0).checked=false

else

me.cells(0).children(0).checked=true

end if

end function

'/////////////////删除一个单元格///////////////

function delrow()

for i=0 to index

if delcheck(i).checked=true then

set tag=delcheck(i).parentelement.parentelement '设置该checkbox所在的行;

tag.style.display=none '其实,所谓的删除就是把它设置为不显示;

totalmoney=totalmoney-clng(tag.cells(1).innertext)

consume.innerhtml=消费总额:&totalmoney&元

tag.cells(1).innertext=0 '消费额设置为0;

end if

next

flag=1 '如果执行了删除操作,则标志文件已经改动;

end function

'////////////////////检查输入数据是否正确////////////

function check(value)

if not (isnumeric(value)) then

msgbox 请在消费金额栏中输入数字!,64,特别提示

elseif value<1 then

msgbox 你的钱难道越花越多?,64,特别提示

else

flag=1

addrow money.value,cstype.options(cstype.selectedindex).innertext,date,weekdayname(weekday(date))

csmonth.selectedindex = month(date()) '月份checkbox转到当前月份;

selectchange(monthname(month(date()))) '表格显示为当前月份的数据;

end if

money.select() 'money输入框选定;

end function

'////////////////////////如果月份checkbox变化//////////////

function selectchange(choose) '78行;

totalmoney=0

for i=0 to index

set tag=delcheck(i).parentelement.parentelement

mname=monthname(month(tag.cells(3).innertext)) '获取数据的月份;

if trim(choose)=一年 and tag.cells(1).innertext<>0 then

tag.style.display=

totalmoney=totalmoney+clng(tag.cells(1).innertext)

elseif mname<>trim(choose) or tag.cells(1).innertext=0 then

tag.style.display=none

else

tag.style.display=

totalmoney=totalmoney+clng(tag.cells(1).innertext)

end if

next

consume.innerhtml=消费总额:&totalmoney&元

end function

'////////////全选或全不选按钮控制代码//////

function selectall() '96行;

if mybutton.value=全部选择 then

for i=0 to index

delcheck(i).checked=true

next

mybutton.value=全不选择

else

for i=0 to index

delcheck(i).checked=false

next

mybutton.value=全部选择

end if

end function

'/////////////当程序退出时//////////////////

sub window_onunload()

if flag=1 then '文件如果已经标志了改动,则提示是否保存;

msg=msgbox(提示:你的设置已经更改,是否保存?,vbyesno+vbexclamation,保存提醒)

if msg=6 then '如果选择了“是”;

selectchange(一年) '当前表格显示的数据为全年的数据;

for i=0 to index

set tag=delcheck(i).parentelement.parentelement

if tag.cells(1).innertext<>0 then

txt=txt&#&tag.cells(1).innertext&#&tag.cells(2).innertext&#

txt=txt&tag.cells(3).innertext&#&tag.cells(4).innertext & vbcrlf

end if

next

set file=fso.opentextfile(consume.ini,2,1) '覆盖写入文件;

file.write(txt).close

end if

end if

end sub

</script>

<!--///////以上为控制代码,以下为样式代码/////////////-->

<style>

#all{border:1px solid #000069;width:600px;text-align:center;padding:2px;}

#header{width:598px;text-align:center;font-family: 隶书;font-size: 24px;

font-weight: bold;background: #eee;margin:1px;}

#header1{text-align:center;font-size: 16px;width:595px;padding:2px 2px;}

#month{float:left;width:20px;margin-left:90px;}

#consume{float:left;width:200px;color:red}

#main{width:600px;height:300px;background: #eee;border:1px solid #000069;overflow:auto;}

#contain{width:600px;height:30px;border:1px solid #000069;}

.line{border:1px solid #000060; height: 1;width:602px;}

.line2{border:1px solid white; height: 1;width:600px;}

.c_button{text-align:center;float:left;width:100px;border:1px solid #ccc;

background-color:#f3f3f3;font-size:12px;color:#333333;

padding:5px 2px;margin:2px;line-height:20px;}

.c_other{text-align:center;float:left;width:136px;

border:1px solid #ccc;background-color:#f3f3f3;font-size:12px;color:#333333;

padding:5px 2px;margin:2px;line-height:20px;height:23px; }

.button {padding:1px;text-align:center;border:0;background-color:#eee;height:23px;cursor:pointer}

.th{text-align=center;background-color:#006699;font-size:14px;

font-family: 隶书;color:#f2f3f7;padding:2px;line-height:22px;}

.row_add{text-align:center;background-color:#ccd2de;height:4px;font-size:12px;line-height:15px;

padding:2px;}

.new_row_add{text-align:center;color:red;background-color:#ccd2ad;height:4px; font-size:12px;

line-height:15px;padding:2px;cursor:hand;}

</style>

<!--///////以下为要显示对象/////////////-->

<hr class=line>

<div id=all>

<div id=header>2007年消费一览表</div>

<div id=header1>

<div id=month><select id=csmonth onchange=selectchange(csmonth.options(csmonth.selectedindex).innertext)><option>一年</option><option>一月</option><option>二月</option><option>三月</option><option>四月</option><option>五月</option><option>六月</option><option>七月</option><option>八月</option><option>九月</option><option>十月</option><option>十一月</option><option>十二月</option></select></div>

<div id=consume>消费总额:</div></div>

<div id=main>

<table border=0 width=100% id=mytable>

<tr class=th><th>选定</th><th>消费金额</th><th>消费类型</th><th>消费日期</th><th>消费星期</th>

</table></div>

<hr class=line2 color=white>

<div id=contain>

<div class=c_button><input type=submit value=全部选择 class=button id=mybutton onclick=selectall></div>

<div class=c_other>消费金额:<input type=text name=money size=5 onmouseover='money.select()'></div>

<div class=c_other>消费类型:<select id=cstype><option>饮食</option><option>娱乐</option><option>其它</option></select></div>

<div class=c_button><input type=submit value=添加记录 class=button onclick=check(money.value)></div><div class=c_button><input type=submit value=删除记录 class=button onclick=delrow()></div>

</div></div>

更多信息请查看脚本栏目
手机网站地址:hta编写的消费记录程序
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map