【发布时间】:2015-02-19 04:33:26
【问题描述】:
我刚开始在学校学习 Visual Basic,课程进展非常缓慢,而且我学的不是很多,所以我正在努力取得进步并做一些实验。 我正在尝试制作 Cookie Clicker 的克隆游戏,我需要使每秒点击次数起作用 我尝试使用内置计时器并在代码中执行简单的加法语句,但很快意识到内置计时器仅在单独使用时才有效。我在运行游戏时无法让它在后台运行。
我尝试使用 system.threading.thread.timer 但不是很成功,因为我是 VB 新手。这是我当前的代码
Public Class window
Dim varcookies As Integer = 0
Dim varcps As Decimal = 0
Dim varclickercost As Decimal = 10
Dim varclicker As Integer = 0
Private Sub Cookie_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cookie.Click
varcookies = varcookies + 1
Me.CookiesVal.Text = varcookies
End Sub
Private Sub window_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Me.CPSVal.Text = varcps
Me.CookiesVal.Text = varcps
Me.btnclicker.Text = varclickercost
Me.clock.Enabled = True
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnclicker.Click
If varcookies >= varclickercost Then
varcookies = varcookies - varclickercost
varcps = varcps + 0.5
varclicker = varclicker + 1
varclickercost = varclickercost * 1.5
Me.Clickers.Text = varclicker
Me.btnclicker.Text = varclickercost
Me.CookiesVal.Text = varcookies
Me.CPSVal.Text = varcps
End If
End Sub
End Class
如果能帮助计时器线程正常工作,我们将不胜感激。
在此之前,这不是功课,我只是为了好玩。在课堂上,我们目前正在探索广泛的文本框。
谢谢:)
【问题讨论】:
-
首先你的定时器代码在哪里?以及您的错误或问题到底是什么。其次,它看起来像是一个 WinForms 应用程序,所以我会考虑改用 System.Windows.Forms.Timer。
-
我删除了计时器代码,因为我什么也做不了。这就是我请求帮助的原因。计时器控件与表单在同一个线程上运行,因此如果我使用它,它不会与表单上的其他任何东西同时运行。
标签: vb.net multithreading winforms visual-studio-2010 timer