VFP编程问题。题目要求是做一个会动的文字
1.编制一个文字水平动态移动操纵的表单;2.文字信息(纵向)初始的显示位置在表单的左边,表单执行后,文字会自动以间隔加1的幅度逐步向表单右边移动,直到文字到达表单最右边缘...
1.编制一个文字水平动态移动操纵的表单;
2.文字信息(纵向)初始的显示位置在表单的左边,表单执行后,文字会自动以间隔加1的幅度逐步向表单右边移动,直到文字到达表单最右边缘;
3.然后文字会自动以间隔减1的幅度逐步向表单左边移动,直到文字回复到初始位置;
4.整个过程不间断地来回移动。
这是答案,但是放到实际操作时候会提醒没有DIRECTION这个属性
(1) Form1的Init事件代码:
THIS.Direction="Right"
(2) Timer1的Timer事件代码:
DO CASE
CASE THISFORM.Direction="Right"
THISFORM.LABEL1.LEFT=THISFORM.LABEL1.LEFT+1
IF THISFORM.LABEL1.LEFT+THISFORM.LABEL1.WIDTH>=THISFORM.WIDTH
THISFORM.Direction="Left"
ENDIF
CASE THISFORM.Direction="Left"
THISFORM.LABEL1.LEFT=THISFORM.LABEL1.LEFT-1
IF THISFORM.LABEL1.LEFT<=0
THISFORM.Direction="Right"
ENDIF
ENDCASE
THISFORM.REFRESH 展开
2.文字信息(纵向)初始的显示位置在表单的左边,表单执行后,文字会自动以间隔加1的幅度逐步向表单右边移动,直到文字到达表单最右边缘;
3.然后文字会自动以间隔减1的幅度逐步向表单左边移动,直到文字回复到初始位置;
4.整个过程不间断地来回移动。
这是答案,但是放到实际操作时候会提醒没有DIRECTION这个属性
(1) Form1的Init事件代码:
THIS.Direction="Right"
(2) Timer1的Timer事件代码:
DO CASE
CASE THISFORM.Direction="Right"
THISFORM.LABEL1.LEFT=THISFORM.LABEL1.LEFT+1
IF THISFORM.LABEL1.LEFT+THISFORM.LABEL1.WIDTH>=THISFORM.WIDTH
THISFORM.Direction="Left"
ENDIF
CASE THISFORM.Direction="Left"
THISFORM.LABEL1.LEFT=THISFORM.LABEL1.LEFT-1
IF THISFORM.LABEL1.LEFT<=0
THISFORM.Direction="Right"
ENDIF
ENDCASE
THISFORM.REFRESH 展开
1个回答
展开全部
要实现你的这个功能,可以把DIRECTION属性改为caption属性就可以。
你把代码里面的direction替换为caption试一试,一定可以。
你把代码里面的direction替换为caption试一试,一定可以。
追问
根据你这样子做了,确实可以诶,但是好像完全不能理解,能解释下吗?
追答
就是在表单载入时,设置表单的标题为right
当表单的标题为right时, 标签label1每隔一秒向右移一个幅度
直到当标签与左边的距离加上标签的宽度与表单的宽度一样时
就把表单的标题设置为left
当表单的标题为left时,标签label每1隔一秒向左移一个幅度
直到当标签与左边的距离为0时
就把表单的标题设置为right
这样就一直循环了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询