讲演用计时软件
用途
供报告者在讲演过程中控制时间。
功能要求
- 总是显示在屏幕的最上层;
- 窗口中包含两个区域:时间显示区和“开始”控制按钮;
- 显示窗口的大小可以设置;
- 点击“开始”按钮以后开始计时。
讨论区
这个和物理关系不大是吗?感觉用VB就可以编吧。。。可惜我不会。
正好这两天有空,我用VB编了一个,差不多可以符合要求,,Alpha版的,慎用~~~
演讲用计时软件 (用UPX加壳压缩过的,据说有的杀毒软件会说是病毒。。。)
还有,对于第三条要求不太理解,控制大小有什么用?~~~做得很不错,基本的功能都实现了。做得还很快!很棒!
关于第三条:本意是希望现实内容的大小可以随窗口大小而改变,而且希望是直接可以用鼠标拖拉就可以实现。
功能改进的几点建议:希望这个窗口是可以移动的;窗口显示的“已开始”应该在开停两个状态时不同;显示区如果可以适当修饰一下,看起来会觉得更舒服!
我的总体感觉:非常棒! — 乐永康 2007/12/27 13:53内容的大小可以随窗口大小而改变⇒应该可以
直接可以用鼠标拖拉就可以实现⇒实现方法还没想到
因为正好要VB考试,所以顺便练练手。
要期末考试了,估计一段时间内会不管它,所以公布一下源码,如果谁有兴趣或者意见的话可以提出,但不要直接修改,谢谢!— 朱骏 2007/12/29 14:43
Dim t!, X%, Y% Private Const SRCCOPY& = &HCC0020 Private Const SWP_NOMOVE& = &H2 Private Const HWND_TOPMOST& = -1 Private Declare Function SetWindowPos& Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) Private Sub Command1_Click() Dim b% b = 0 If Val(Text1.Text) < Label1.Width Then b = b + 1 If Val(Text2.Text) < Label1.Height Then b = b + 2 Select Case b Case 0 X = Val(Text1.Text) Y = Val(Text2.Text) Case 1 MsgBox ("您输入的宽度过小,请输入大于等于" & Label1.Width & "的纯数字,谢谢!") Case 2 MsgBox ("您输入的高度过小,请输入大于等于" & Label1.Height & "的纯数字,谢谢!") Case 3 MsgBox ("您输入的宽度和宽度都过小,请输入大于等于" & Label1.Width & "×" & Label1.Height & "的纯数字,谢谢!") End Select Form1.Height = Y Form1.Width = X End Sub Private Sub Command2_Click() Frame1.Visible = False Form1.Height = Y Form1.Width = X End Sub Private Sub Command3_Click() Dim b% b = MsgBox("确定要清零计时器?", 257) If b = 1 Then t = 0 Timer1.Enabled = False Label1.Caption = "(单击以开始计时)" Label1.ForeColor = &HFF End If End Sub Private Sub Command4_Click() End End Sub Private Sub Form_Load() SetWindowPos Me.hwnd, HWND_TOPMOST, 0, 0, 740, 540, SWP_NOMOVE t = 0 Form1.Height = Label1.Height Form1.Width = Label1.Width Frame1.Top = Label1.Height + 1 X = Label1.Width Y = Label1.Height Label3.Caption = "版权所有:复旦大学物理系" & vbCrLf & "07300190012 朱骏" & vbCrLf & "Version:1.00 Alpha" & vbCrLf & "免费软件 不可作商业用途" Label4.Caption = "双击以展开/收起面板" & vbCrLf & "单击以切换状态(红停黑走)" End Sub Private Sub Label1_Click() If Timer1.Enabled = True Then Timer1.Enabled = False Label1.ForeColor = &HFF Else Timer1.Enabled = True Label1.ForeColor = &H0 End If End Sub Private Sub Label1_DblClick() If Form1.Height = Y Then Form1.Height = Label1.Height + Frame1.Height Text1.Text = Label1.Width & "宽" Text2.Text = Label1.Height & "高" Frame1.Visible = True Else Frame1.Visible = False Form1.Height = Y Form1.Width = X End If End Sub Private Sub Timer1_Timer() t = t + 1 h = Int(t / 3600) m = Int((t - 3600 * h) / 60) s = t - 3600 * h - 60 * m If Check1.Value = 0 Then Label1.Caption = h & "h" & Format(m, "00") & "m" & Format(s, "00") & "s" Else Label1.Caption = "已开始:" & h & "h" & Format(m, "00") & "m" & Format(s, "00") & "s" End If End Sub
p.s. 怎么配色那么难看…