主题:6年前用FOXPRO写的英文五笔打字软件和众多屏保,谁想看?
顶天
[专家分:0] 发布于 2005-10-19 02:01:00
在6年前上大学时,老师教FOXPRO做数据库,我竟然疯狂地迷上了用FOXPRO来编英文打字软件、五笔打字软件和众多屏保,当时每天编到深夜,早上还要早起扫雪出操,每天仅睡两三个小时,真不知当时为什么有那么大的劲。(我不是计算机专业)
事后就没编了,原因是觉得用FOXPRO编数据库是专长,是正统,用它编别的软件无疑于用筷子勺水喝,虽也能完成,但效率极其低下,再者当时也觉得中国的盗版市场是否会让程序员成为活雷锋,但也可能吃不饱饭,就作罢了!
近日,觉得拿出来让大家分析分析可能也比较有意思,可能大家谁都没有想到用FOXPRO也能编出非数据库的软件吧!我那个英文打字软件是当时看到了小霸王学习机的英语打字游戏,就是天空掉字母,然后下面按个键,就发射子弹击爆它,左边是显示正确率、错误率及打字速度!
另外还有些图形屏保,三维图等,也是用FOXPRO编的,挺有意思,可以让大家图个新奇!
大家想看的话,回复一下,我就发上截图及源码,大家看一看!
回复列表 (共54个回复)
沙发
esptgo [专家分:130] 发布于 2005-10-19 08:53:00
好啊,很想看看,如果不方便在这里贴的话,你可以把程序及源码发到我的信箱里:
orbxl-a@yahoo.com.cn
谢谢!
板凳
dream001 [专家分:0] 发布于 2005-10-19 09:05:00
给我一份
zzj921@tom.com
3 楼
顶天 [专家分:0] 发布于 2005-10-19 12:41:00
先传两个截图上来,大家看看!
[img]http://www.gz9f.com/bbs/UploadFile/2005-10/20051019123255690.jpg[/img]
[img]http://www.gz9f.com/bbs/UploadFile/2005-10/20051019124014373.jpg[/img]
4 楼
jinlonggao [专家分:17130] 发布于 2005-10-19 20:38:00
好东西谁都想要,我也不例外,如果顶天能给我一份,我定能回以厚报.先谢谢了!
我的邮箱是:jinlong64@163.com
5 楼
yindf [专家分:80] 发布于 2005-10-19 21:13:00
谢谢,给我一份吧。研究研究。
yinshua188@126.com
6 楼
dinghuiwen [专家分:260] 发布于 2005-10-19 21:39:00
这么优秀的作品,拿出来让大家共同来分享吧
k23654@126.com
7 楼
xkh [专家分:150] 发布于 2005-10-19 23:30:00
真觉得柳暗花明,眼前一亮,能给我一份吗?谢谢
XKHHPXY@YAHOO.COM.CN
8 楼
顶天 [专家分:0] 发布于 2005-10-20 00:53:00
这么多朋友要,我就不一一发信了,直接把源码贴到网上吧,大家把源码粘到记事本里面,然后另存为*.PRG文件,再用VF打开即可。
NO.1 英文打字练习软件
----------------------------------------------------
set talk off
clear
set color to g+/n,+gr/BR
@01,01 TO 25,104
tg="弹指神功第一招:"
h1=7
j1=15
n1=1
do while n1<=16
tg1=substr(tg,n1,2)
@ h1,j1 get tg1 font"隶书",20
j1=j1+5
n1=n1+2
n2=1
do while n2<60000
n2=n2+1
enddo
enddo
**********************************
set color to gr+/n,+gb/R
xy="键在我心"
h1=12
j1=38
n2=1
do while n2<=8
xy1=substr(xy,n2,2)
@ h1,j1 get xy1 font"宋体",25 style"b"
j1=j1+11
n2=n2+2
n3=1
do while n3<100000
n3=n3+1
enddo
enddo
nn=1
do while nn<20000
nn=nn+1
enddo
CLEA
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
set color to +rG/N
tb="弹 指 神 功 1.0 版"
@00,40 get tb font "宋体",16 style"b" colo gr+/n,br+/n
@1.5,19 FILL TO 7,95 COLOR GR+/B
j1=" ` 1 2 3 4 5 6 7 8 9 0 - = \"
j2=" Q W E R T Y U I O P [ ]"
j3=" A S D F G H J K L ; '"
j4=" Z X C V B N M , . /"
set color to gr+/n,+g/B
@ 1.5,20 get j1 font "宋体",13 style"b"
@ 2.8,20 get j2 font "宋体",13 style"b"
@ 4.1,20 get j3 font "宋体",13 STyle"b"
@ 5.4,20 get j4 font "宋体",13 style"b"
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
set colo to +g
?
ACCE "请输入你的姓名:" TO xm
ACCE "请选择速度(1-10)" TO n
n=iif(n="",10,n)
set color to w/n
@ 07,00 CLEAR TO 9,55
set color to gr+/n,gr+/g+
@ 11,02 say "姓 名:"
@ 12,02 say "正确数:"
@ 13,02 say "错误数:"
@ 14,02 say "正确率:"
@ 14,02 say "正确率:"
@ 15,02 say "速 度:"
@ 11,09 get xm
ESC="按ESC键退出!"
@ 24,02 GET ESC
ds=0
cs=0
zz=0
ex=1
sd=0
dds=" 0"
*@@@@@@@@@@@@@@@@@@@@@@@@@@ 循环开始
set escape on
on escape ex=2
T1=time()
do while ex<2
jp="`1234567890-=\QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,.098/"
x0=rand()*100
x1=iif(x0=0,1,iif(x0<50,x0,x0-50))
x0=substr(jp,x1,1)
zz=zz+1
s1=10
s2=iif(x1<=14,23+x1*5,iif(x1<=26,23+(x1-14)*5,iif(x1<=37,23+(x1-26)*5,23+(x1-37)*5)))
*111111111111111111111下落
set colo to +g/w,GR+/N
HT=23
LT=58
do while s1<23
@ s1,s2 GET X0 FONT "隶书",15 COLO GR+/N,G+/N STYL "B"
s1=s1+0.1
*22222222222准备击中它
if inkey()=asc(x0)
ds=ds+1
dds=str(ds,7)
@S1-4,S2-4 CLEA TO S1+4,S2+4
exit
endif
if lastkey()=27
ex=2
exit
endif
***********底部加工作室***START
set colo to +gr
TS="踏雪无痕工作室"
@ HT,LT say TS
@ HT,LT-10 say" "
LT=LT+0.5
************
if LT>90
@ HT+1,00 CLEA HT+1,10
@ 24,02 GET ESC
endif
if LT>110
LT=58
endif
*****************底部加工作室***END
*2222222222击中结束
*33333333333延迟开始
a=1
do while a<40*N
a=a+1
enddo
*33333333333延迟结束
@ s1-3,s2 CLEA TO S1+0.1,S2+5
*1111111111111111111下落结束
enddo
@ s1-4,s2-4 CLEAR TO S1+1,S2+4
cs=zz-ds
cS1=str(cs,7)
zl=str((ds/zz)*100,6,2)+"%"
T2=time()
*----------开始速度
TA1=val(left(T1,2))
TA2=val(left(T2,2))
TB1=val(subs(T1,4,2))
TB2=val(subs(T2,4,2))
TC1=val(right(T1,2))
TC2=val(right(T2,2))
****TT
TT=(TA2-TA1)*60+(TB2-TB1)+(TC2-TC1)/60
SD1=str(ds/TT,2)
sd=SD1+"/分钟"
@ 12,09 get dds
@ 13,09 get cS1
@ 14,09 get zl
@ 15,09 get sd
loop
enddo
*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@循环结束
clear
do case
case val(sd)>=60
@13,25 SAY "优秀! 望你百尺杆头,更上一层楼!" font"隶书",20
case val(sd)>=40
@13,25 SAY"良好! 望你再接再励,精益求精" font"隶书",20
case val(sd)>=20
@13,25 SAY"及格! 望你下步加紧练习,有所进步!" font"隶书",20
otherwise
@13,25 SAY"别灰心! 化悲痛为力量,定能看到美丽女神的!" font"隶书",20
endcase
FOR I=1 TO 10000000
NEXT
set colo to
CLEAR
h1=26
LT=10
do while h1>-2
set colo to gr+/n
@ h1,LT say "欢 迎 使 用 本 软 件 , 欢 迎 下 次 再 用 !" font"隶书",15
@ h1+2,LT say "踏 雪 无 痕 工 作 室 : 李 吉 勇 千 禧 年 特 别 奉 献 !" font"隶书",15
@ h1+4,LT+70 say "2000/04/25" font"隶书",15
n=1
do while n<500
n=n+1
enddo
h1=h1-0.05
* @h1,LT clear to h1+6,LT+70
enddo
clear
------------------------------------------------------------------------------
9 楼
顶天 [专家分:0] 发布于 2005-10-20 00:55:00
NO.2 三维圆
----------------------------------------------------
Set color to B/GR+
clear
SET BLINK ON
*************** 给 各 变 量 赋 予 初 值
ZT=1
CD=1
ZF=""
*****************************
@03,10 SAY "请选择字体: 1宋体;2楷体;3黑体;4隶书" GET ZT COLO +G/GR+,RB+/N SIZE 1,1 PICT"9" RANG 1,4
READ
@04,10 SAY "请输入字符长度:1-100" GET CD COLO +G/GR+,RB+/N SIZE 1,3 PICT"999" RANG 1,100
READ
@05,10 say "请输入任意字符:" get ZF COLO +G/GR+,RB+/N SIZE 1,CD
READ
ZT=IIF(ZT=1,"宋体",IIF(ZT=2,"楷体",IIF(ZT=3,"黑体","隶书")))
*******************************
set colo to +r/N
clea
QS=9
DO WHILE QS>=0.4
Y1_L=6
DO WHILE Y1_L<=46
Y1_H1=((-1)*(SQRT(ABS(400-(Y1_l-26)^2)))+32)*(1/2)
Y1_H2=(SQRT(ABS(400-(Y1_l-26)^2))+32)*(1/2)
Y2_L=Y1_L-6
DO WHILE Y2_L<=Y1_L+6
Y2_H1=(-1)*(SQRT(ABS(36-(Y1_l-Y2_L)^2)))+Y1_H1
Y2_H2=SQRT(ABS(36-(Y1_l-Y2_L)^2))+Y1_H1
Y2_H3=(-1)*(SQRT(ABS(36-(Y1_l-Y2_L)^2)))+Y1_H2
Y2_H4=SQRT(ABS(36-(Y1_l-Y2_L)^2))+Y1_h2
* @ Y1_H1,Y1_L SAY "A" colo +br
* @ Y1_H2,Y1_L SAY "A" colo +br
@ Y2_H1,Y2_L SAY ZF color +Gr/*BR font ZT,3
@ Y2_H2,Y2_L SAY ZF color +R/*BG font ZT,3
@ Y2_H3,Y2_L SAY ZF color +R/*BG font ZT,3
@ Y2_H4,Y2_L SAY ZF color GR+/*BR font ZT,3
@ Y2_H1,75-Y2_L SAY ZF color Gr+/*BR font ZT,3
@ Y2_H2,75-Y2_L SAY ZF color +R/*BG font ZT,3
@ Y2_H3,75-Y2_L SAY ZF color +R/*BG font ZT,3
@ Y2_H4,75-Y2_L SAY ZF color Gr+/*BR font ZT,3
Y2_L=Y2_L+0.2
ENDDO
Y1_L=Y1_L+QS
ENDDO
QS=IIF(QS>1,QS-4,QS-0.3)
L=10
clea
ENDDO
----------------------------------------------------
10 楼
顶天 [专家分:0] 发布于 2005-10-20 00:56:00
另外还有几十个吧,有五笔打字软件、随机屏保等,有成品,半成品,大家需要我就再传上来。
我来回复