VB要求常数表达式

我在VB的form1中声明PrivateConstScrnWidth=100PrivateConstScrnHight=90没有问题,可是我想把100换成form2.te... 我在VB的form1中声明
Private Const ScrnWidth = 100
Private Const ScrnHight = 90
没有问题,可是我想把
100换成form2.text1.text
90换成form2.text2.text
这时就发生发生错误了,VB提示要求常数表达式,怎样才可以调用到form2.text1.text的信息呢,VB小菜鸟,希望高手细心帮助啊,谢谢了。
按照 LuoJi_1995 的方法,VB在 Private ScrnWidth = form2.text1.text 那里提示缺少语句结束。

温暖阳阳 的意思是 Private Const ScrnWidth = Val(Form2.Text3.Text) 这样吗,可还是不可以啊。
展开
 我来答
尘入蜓孟影食1038
2010-01-30 · TA获得超过3512个赞
知道大有可为答主
回答量:2307
采纳率:87%
帮助的人:1356万
展开全部
不行!!!!

如果你要用用户将来输入的量来做“常数”,那是不对的。因为那已经不是常数,而是“变量”了。

建议,设立窗体级变量。
在最前面声明:
dim ScrnWidth as single,ScrnHight as single
后面有两种方案:一个是填写文本框的同时,就改变这个变量;二一个是填写完,点“确定”按钮,再改变。我推荐后者,因为这个符合多数软件的操作习惯。
Private Sub Command1_Click()
ScrnWidth = Val(text1)
ScrnHight = Val(text2)
End Sub
当然看样子,你主要是用来改变什么控件的尺寸?那么也可以直接不要这些变量(包括前面的声明),
Private Sub Command1_Click()
控件.Width = Val(text1)
控件.Hight = Val(text2)
End Sub
LuoJi_1995
2010-01-30 · TA获得超过1714个赞
知道小有建树答主
回答量:613
采纳率:0%
帮助的人:765万
展开全部
Const修饰符,在VB中必须是编译时常量表达式,所以不行,去掉Const即可,但是这样不安全。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
穆奕位端丽
2019-12-06 · TA获得超过3832个赞
知道大有可为答主
回答量:3117
采纳率:32%
帮助的人:184万
展开全部
我不明白你说的关于计算斐波那契的题目,看了你的代码,想提点错误不知道对不对,如果不对就当我没说呀!!!!你定义了一个动态数组,在If
n
=
1
Then
ReDim
fib(1)
fib(1)
=
1
s
=
1
End
If
中你重新定义了,而在If
n
>
1
Then中就没有重新定义,你看看是不是应该这样:
If
n
>
1
Then
ReDim
fib(
n)
fib(1)
=
1
fib(2)
=
1
s
=
2
For
i
=
3
To
n
fib(i)
=
fib(i
-
1)
+
fib(i
-
2)
s
=
s
+
fib(i)
Next
i
End
If
仅供参考!不对的话就当我没说
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-01-30
展开全部
那你倒不如直接用变量
dim ScrnWidth% = cint(form2.text1.text )

常量本身就是不变的 你搞成读文本框的话 用变量吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
温暖阳阳
2010-01-30 · TA获得超过166个赞
知道小有建树答主
回答量:167
采纳率:100%
帮助的人:103万
展开全部
Private Const ScrnWidth = 100 以这条语句为例,因为有Const,则在程序中相当于用ScrnWidth来替代100。程序中所有的ScrnWidth均是100.并且ScrnWidth的值不能再在程序中重复赋值。
换种说法就像认为规定π的值是3.1415926一样,程序中使用ScrnWidth均代表你在程序开始时赋的值。这样便于程序日后修改。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式