我想在text文本框中显示一个八位数12345678,但是程序自动将这个数用科学计数法表示为1.2345678+E08了,但是我希望它显示
的就是“12345678”,我改了dataformat属性,但是不管用。清大家帮忙。

解决方案 »

  1.   

    我的文本框没有你说的问题,可以写到15不会用科学计数法显示。(我的是VB6 SP6,不知你的是什么)可以测试以下语句
    Text1.Text = 123456789000000#
      

  2.   

    Function LongToString(ByVal n As Long) As String
        While n <> 0
            LongToString = n Mod 10 & LongToString
            n = n \ 10
        Wend
    End Function
      

  3.   

    定义个字符串来显示到文本框中
    dim stra as string
    stra=cstr(12345678)
    text1.text=stra
      

  4.   

    你可以试试:
     Text1.Text = Format(123456789, 0)
      

  5.   

    不好意思,我再补充一下。关键是要显示的那个数字是程序中计算出来,然后直接赋到text文本框中的,所以我们事先并不知道它就是1234567890,因此1、3、4楼的方法不能用。二楼的方法我试了一下 ,也不行 。
    我用的是VB6.0
      

  6.   

    如果你计算出来的数据已经是科学记数法了,赋给text,text当然也会显示为科学记数法的样式。你现在的任务是控制计程序的结果形式为12345678计算程序是你自己的程序的一部分吗?
      

  7.   

    为什么不行?
    Private Sub Form_Load()
        MsgBox LongToString(12345678)
    End SubFunction LongToString(ByVal n As Long) As String
      While n <> 0
      LongToString = n Mod 10 & LongToString
      n = n \ 10
      Wend
    End Function
    测试正常。另外整数最大只能是2147483647。再大用Currency类型。
      

  8.   

    ?format(123456789.0,"#")
    123456789
      

  9.   

    ?format(11234567890.0,"#")
    11234567890
      

  10.   


    请问,你的工作环境是什么?
    在Excel中碰到过.
      

  11.   

    Private Sub Form_Load()
    Text1 = CStr(34567.2 * 56789)'显示1963036720.8
    End Sub