几个小问题(100分)

liuyi3000 2003-12-26 07:05:30
开场对白:我在学习VB中遇到了问题于是我马上想到了CSDN的朋友.你们好啊.在问
问题前祝大家Merry Christmas...
问题:1.怎么样将Text输入的每个字符用符号分隔开来?(20)
2.10进制怎么转换成2进制?(20)
3.怎样判定进度条的进度与传送文件的多少匹配呢?(60)

希望各位朋友给予代码借鉴...谢谢
QQ:174453914
E-Mail:liuyi300@QQ.com
...全文
90 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
986753421 2003-12-27
  • 打赏
  • 举报
回复
to: northwolves(野性的呼唤)

好方法!受益。
Ringfo 2003-12-26
  • 打赏
  • 举报
回复
回符:1.不太明白你的意思
2.vb没有二进制表示法,只能自写函数得到二进制形式的字符串
3.进度条控件有一个value属性,它控制进度位置相对于Max属性的位置
如果你指的是拷贝文件,要得到进度是比较困难的,除非你自己打开文件再一个字节一个字节的写入,否则很难得到准确的进度
如果是网络传输,比如用winsock控件,是可以实现的,先传文件大小过来,再比较收到的数据大小,然后就是算出比率(注意:不能直接将进度条的max设为文件大小,进度条的max属性是有最大限制的,超过了会溢出)
northwolves 2003-12-26
  • 打赏
  • 举报
回复
2.


Function dectoBin(X As Long) As String
Const Bins = "0000000100100011010001010110011110001001101010111100110111101111"
Dim i As Integer, s As String, y As String
y = Hex(X)
s = ""
For i = 1 To Len(y)
s = s + Mid(Bins, (Val("&h" + Mid(y, i, 1)) * 4 + 1), 4)
Next
dectoBin = Format(s, "0")
End Function


Private Sub Command1_Click()
MsgBox dectoBin(10000)
End Sub
ddsty 2003-12-26
  • 打赏
  • 举报
回复
楼上是在别人输入的时候加,看我这个~
第一个问题:
Private Sub Text1_KeyPress(KeyAscii As Integer)
dim I as integer
dim Str as string
for I=1 to len(text1.text)
str=str+mid(text1.text,i,1)+"你要加的符号"

if i=len(text1.text) '去掉最后一个多余的符号
str=mid(str,1,len(str))
end if
next I
End Sub
第二个问题:
用楼上的函数或自己跟据十进制转二进制的算法做个方法.
第三个问题:
思路设置进度条的最大值为传送文件的长度,最小值为零,传送多少就显示多少……
windeflower 2003-12-26
  • 打赏
  • 举报
回复
第一个问题:
Private Sub Text1_KeyPress(KeyAscii As Integer)
Text1.Text = Text1.Text & "'"
Text1.SelStart = Len(Text1.Text)
End Sub

你可以在这个事件中用IF 语句加上按键控制
flc 2003-12-26
  • 打赏
  • 举报
回复
1)不明白你的意思
2)应该有个函数什么的,例如十进制转十六进制的函数为HEX(),十进制转八进制的函数为Oct()。但你说的10转2进制一时想不起来了。呵呵!!!
3)思路设置进度条的最大值为传送文件的长度,最小值为零,传送多少就显示多少……
flc 2003-12-26
  • 打赏
  • 举报
回复
关注

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧