标题:【求助】表单抽奖系统
只看楼主
g593028933
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2013-4-30
得分:0 
回复 30楼 TonyDeng
好吧,就这样了吧。非常感谢你!谢谢!
2013-05-01 17:04
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
这样你会做了么?

授人以渔,不授人以鱼。
2013-05-01 17:14
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
程序代码:
CLEAR ALL
Main()
RETURN 

PROCEDURE Main
    LOCAL loForm
    loForm = CREATEOBJECT("_Form")
    WITH loForm
        .Caption = "抽奖"
        .AutoCenter = .T.
        .Show
    ENDWITH
    READ EVENTS
ENDPROC 

DEFINE CLASS _Form AS Form

    IsRolling = .F.

    ADD OBJECT Command1 AS CommandButton WITH Height = 25, Width = 40
    ADD OBJECT Text1    AS TextBox       WITH Height = 25, Width = 100, Enabled = .F.
   
    PROCEDURE Load
        USE 表1 ALIAS students IN 0
    ENDPROC
   
    PROCEDURE Unload
        IF USED("students")
            USE IN students
        ENDIF
    ENDPROC
   
    PROCEDURE Arrange
        WITH This.Text1
            .Top = 5
            .Left = 5
        ENDWITH
        WITH Top = This.Text1.Top
            .Left = This.Text1.Left + This.Text1.Width + 5
        ENDWITH
    ENDPROC
   
    PROCEDURE Activate
        This.Arrange
    ENDPROC
   
    PROCEDURE Resize
        This.Arrange
    ENDPROC
   
    PROCEDURE Destroy
        CLEAR EVENTS
    ENDPROC
   
    PROCEDURE Text1.Roll
        DO WHILE ThisForm.IsRolling
            IF INKEY(0.2, "M") == 0
                This.Value = ALLTRIM(students.姓名)
                SELECT students
                SKIP
                IF EOF()
                    GOTO TOP
                ENDIF
            ELSE
                LOCAL laObjs[1]
                IF (AMOUSEOBJ(laObjs) > 0) .AND. (UPPER(laObjs[1].Name) == UPPER())
                    ThisForm.IsRolling = .F.
                    EXIT
                ENDIF
            ENDIF
        ENDDO
    ENDPROC
   
    PROCEDURE Command1.Refresh
        This.Caption = IIF(!ThisForm.IsRolling, "开始", "结束")
    ENDPROC
   
    PROCEDURE Command1.Click
        ThisForm.IsRolling = !ThisForm.IsRolling
        This.Refresh
        IF ThisForm.IsRolling
            ThisForm.Text1.Roll
        ENDIF
    ENDPROC 

ENDDEFINE

授人以渔,不授人以鱼。
2013-05-01 17:47
g593028933
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2013-4-30
得分:0 
回复 33楼 TonyDeng
这个'……太复杂了  我才开始学vfp  看不懂这些
2013-05-01 20:39
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
把它黏贴到一个prg文件中do一下就知道了

授人以渔,不授人以鱼。
2013-05-01 21:15
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
要随机出名,改动一下Roll方法就可以了。

授人以渔,不授人以鱼。
2013-05-01 21:25
g593028933
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2013-4-30
得分:0 
回复 36楼 TonyDeng
这是程序文件嘛  我是要用表单做
2013-05-01 21:48
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
什么叫用表单做?

授人以渔,不授人以鱼。
2013-05-01 21:49
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
这是按我的思路做的产物。
一次抽一个奖.rar (4.72 KB)



只求每天有一丁点儿的进步就可以了
2013-05-02 08:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-405952-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.693293 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved