请教:在VB中,可以编辑程序代码,但不能修改用户界面的工作状态是中断模式。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请教:在VB中,可以编辑程序代码,但不能修改用户界面的工作状态是中断模式。相关的知识,希望对你有一定的参考价值。

答案是中断模式,为什么?
另外在VB中立即窗口一般什么时候用啊?

vb有三种工作模式:设计、运行、中断。在设计模式中,可以编辑程序代码,也可修改用户界面的工作状态;在运行模式中,不可以编辑程序代码,也不可修改用户界面的工作状态。

立即窗口用于调试程序。一是,在程序的适当位置加入语句:“ debug.print 表达式” ,可以在立即窗口中看到“表达式”的值。 二是,在中断模式中,可以用:“print 表达式”查看“表达式”的值,或 用 “变量名=值”给当前的变量赋值。
参考技术A 在某段子程序最后写上 debug.print " " 然后在观看立即窗口。
根据我的经验是用来看程序是否运行到此过程
一般在块调试的时候用

[VB]是不是可以在函数中调用自己?

VB 例如一个用户函数f:

public function f(x as single) as single
...
a = f(a) <--是否能在这里调用f本身?
...
end function

我记得好象不可以,会出错;但这个操作好象是叫"迭代"吧?(记不清了) 如果实现将很好用,该怎样实现呢?
只有一楼正经

234楼都什么菜鸟

参考技术A 可以
但小心,调用自己有可能造成无限循环,所以在过程\函数中要有跳出的语句
参考技术B VB完全可以使用递归算法,在函数体f内可以出现函数f本身,以下求阶乘的程序在VB6通过

Public Function f(x As Integer) As Integer

If x = 1 Then
f = 1
Else
f = x * f(x - 1)
End If

End Function

Private Sub Command1_Click()
MsgBox f(5)

End Sub

如果把f = x * f(x - 1)改成f = x * f(x)或f = x * f(x + 1),明显不合理,但是VB也会通过,但是执行的时候会产生堆栈溢出的错误
参考技术C 楼主提到的这种调用方式叫做递归。

vb不熟悉,不过在大多数现代编程语言中,都可以使用递归调用。可以用来简单的解决某些特殊的问题,比如计算阶乘。但是递归层数太高时,效率会明显降低,因为要用到大量的堆栈操作。
参考技术D 可以使用,您大约记错了。

public function f(x as single) as single
...
if a = 1 then
f = 2
else
f = 0
end if

a = f(a) <--这样a就得2了
...
end function本回答被提问者采纳
第5个回答  2005-10-02 我认为可以,因为万事皆有可能

以上是关于请教:在VB中,可以编辑程序代码,但不能修改用户界面的工作状态是中断模式。的主要内容,如果未能解决你的问题,请参考以下文章

请教各位大虾:如何更改已经生成的VB.NET项目及里面的EXE文件的名字?

vb6.0系统,如何在DataBrid控件中直接修改数据?

请教VB6.0 中DataGrid 操作Access数据库的问题

c# 如何双击listview 的项可变成编辑状态?

c#如何使一个文本框变为不可编辑?但是又可以复制里面的数据?

请教:如何限制SYBASE登录,条件是用户名默认SA 口令空 不能修改