程序有句代码是这样的“Label1.Caption = (Loc(1) * 100 / lDatalen) & "%"运行起来的结果是,程序保留了13位左右的小数点Select Case State'...没有列举其它情况。Case icError '11vtData = Inet1.ResponseCode & ":" & Inet1.ResponseInfoCase icResponseCompleted ' 12Dim bDone As Boolean: bDone = FalseDim lDatalen As Long: lDatalen = 0vtData() = Inet1.GetChunk(1024, 1) DoEventsOpen savefile.Text For Binary Access Write As #1 If Len(Inet1.GetHeader("Content-Length")) > 0 Then lDatalen = CLng(Inet1.GetHeader("Content-Length"))' CLng(Inet1.GetHeader("Content-Length")) 为文件大小Do While Not bDonePut #1, Loc(1) + 1, vtData()vtData() = Inet1.GetChunk(1024, 1)DoEventsLabel1.Caption = (Loc(1) * 100 / lDatalen) & "%" ProgressBar1.Value = 100 * (Loc(1) / lDatalen)If Loc(1) >= lDatalen Then bDone = TrueLoopClose #1MsgBox "下载完成", vbInformation, End SelectEnd Sub
2 回答
胡说叔叔
TA贡献1804条经验 获得超8个赞
要去掉所有小数是吧
在VB中 /是除法 \是整除 所以只要用
Label1.Caption = (Loc(1) * 100 \ lDatalen) & "%"
就能只保留整数
当然用VB自带的FORMAT函数也能保留整数
Label1.Caption = Format((Loc(1) * 100 / lDatalen), "0") & "%"
看你这代码貌似是显示文件传输百分比是吧 FORMAT函数的功能是很强大的 你甚至可以直接让他显示百分数 这样就不用乘100了 如下
Label1.Caption = Format((Loc(1) / lDatalen), "0%")
再给你举点例子
Format (2, “0.00”)
2.00
Format (.7, “0%”)
70%
Format (1140, “$#,##0”)
$1,140
- 2 回答
- 0 关注
- 148 浏览
添加回答
举报
0/150
提交
取消