我设计了一个vb程序,现在遇到了两个问题不能解决,希望各位高手可以帮忙解决。 设计一个vb小程序解决下面的问题,最好使用IF分支语句,求高...

作者&投稿:幸刷 (若有异议请与网页底部的电邮联系)
需要定义一个变量ComputYN,用于判断当a、b、c、d 改变时是否需要计算。
这里又定义了两个文本框:TextX、TextY,用于存放你计算出来的x、y,也可根据自己的需要做其它处理。

程序启动时进入密码校验程序,这里的密码为“123”,可根据需要设置

Private ComputYN As Boolean
Private Sub Form_Load()
ComputYN = False
Command4.Caption = "Command4"

Dim Mima As String, mima1 As String
Dim Nci As Integer

Mima = "123"
Nci = 0
While Nci < 3
mima1 = InputBox("请输入密码(第" & Nci + 1 & "次):", "输入密码", "")
mima1 = Trim(mima1)
If Mima = mima1 Then GoTo 10
Nci = Nci + 1
If Nci = 3 And Mima <> mima1 Then
'Form1.Hide
End
End If
Wend
10 '
End Sub

Private Sub Command4_Click()
If ComputYN = False Then
Comput1
ComputYN = True
Command4.Caption = "计算"
Else
ComputYN = False
Command4.Caption = "Command4"
End If
End Sub

Private Sub Comput1()
'测绘重心
Dim a As Single
Dim b As Single
Dim c As Single
Dim d As Single
Dim e As Single

Dim G As Single
Dim X As Single
Dim Y As Single

a = Val(Text1.Text) + 0.0000000001
b = Val(Text2.Text) + 0.0000000001
c = Val(Text3.Text) + 0.0000000001
d = Val(Text4.Text) + 0.0000000001
e = Val(Text5.Text) + 0.0000000001
G = (a + b + c + d) / 9.8 - e
X = (4000 * a + 4000 * b + 10400 * c + 10400 * d) / (a + b + c + d)
Y = (3600 * a + 6000 * b + 3600 * c + 6000 * d) / (a + b + c + d)

TextX.Text = X
TextY.Text = Y
End Sub

Private Sub Text1_Change()
If ComputYN = True Then Comput1
End Sub

Private Sub Text2_Change()
If ComputYN = True Then Comput1
End Sub
Private Sub Text3_Change()
If ComputYN = True Then Comput1
End Sub
Private Sub Text4_Change()
If ComputYN = True Then Comput1
End Sub
Private Sub Text5_Change()
If ComputYN = True Then Comput1
End Sub

1.
if 密码错误次数=3 then end

2.
你的这个想法不错,但是编程比较复杂,要设置一个全局变量作为开关, 计算过程作为一个单独的子程序,当文本框的change事件发生,就调用一次。

我想请教大家一个用VB程序做一个动态模拟问题,请高手们指点迷津~

太难了

a=inputbox("输入第一门课成绩")
b=inputbox("输入第二门课成绩")
c=inputbox("输入第三门课成绩")
if (a+b+c)/3>95 or (a=100 and b=100 and c>80 or a=100 and c=100 and b>80 or b=100 and c=100 and a>80) then print "一等奖"
if (a+b+c)/3>90 or (a=100 and b>75 and c>75 or b=100 and a>75 and c>75 or c=100 and a>75 and b>75) then print "二等奖"
if a>=70 and b>=70 and c>=70 then print "三等奖"

用VB编程时,一个控件在界面上找不到了
答:2016.05.06我也遇到这样的情况(VB项目),即我拉动某组控件,可能是不留神,再次查看时发现这组控件不在显示区域了。我的是一个Frame框,里面有好几个textbox,现在这整个frame不见了,不在显示区域了!着急!咋办,经网络搜索发现提示,加上自已捉摸,终于实现了我“丢失”的控件显示返原了!当前...

vb 程序设计
答:新建标准EXE,然后来两个文本框,一个按钮,文本框拉高一点,如图所示,再把它的MultiLine属性设置为True,把下面的代码复制过去就ok了 Private Sub Command1_Click()If Text1.Text = "" Then MsgBox "请输入10组数字!"Exit Sub End If Dim Temp Temp = Split(Text1.Text, vbCrLf)If UBound(...

利用vb程序设计一个程序求1+3+5+...n的和
答:Private Sub Form_Click()Dim a As Integer, i As Integer, sum As Integera = InputBox("输入一个大于1的奇数")For i = 1 To a If i Mod 2 = 1 Then sum = sum + i Print i; End IfNextPrintPrint "和:" + CStr(sum)End Sub ...

vb语句 设计一个随机数程序,生成10个范围是1到100随机整数,并求出这...
答:'声明变量 dim Min_num as int dim Max_num as int dim Sum_num as int dim Arr_num(9) as int '赋予初始值 Min_num=101 Max_num=-1 Sum_num=0 '循环10次获得10个随机数 for i=1 to 10 randomize Arr_num(i-1)=int(rnd*100)+1 '判断后赋值最小值 if Arr_num(i-1)<Min_...

VB 设计一个自动出题并判断正误的程序
答:Option Base 1 Dim a As Integer, b As Integer, c As Integer, n As Integer Private Sub Command1_Click()s = "+-×÷"Text1.Text = ""n = Int(Rnd(1) * 4) + 1 a = Int(9 * Rnd(1)) + 1 b = Int(9 * Rnd(1)) + 1 If n = 2 And a < b Then t = a:...

设计一个计算程序(vb),该程序由四个文本框:文本框1(Text1)、文本框2...
答:Private Sub Command1_Click()If Text1.Text = "" Or Text1.Text = "" Or Text1.Text = "" Then MsgBox "请完整填写成绩"text4.Text = (Val(Text1.Text) + Val(Text1.Text) + Val(Text1.Text)) / 3 End Sub Private Sub Command2_Click()Text1.Text = ""Text2.Text = ""T...

急求!VB设计程序,在窗体上显示一个几何图形,如图所示。
答:for i=1 to 8‘循环 ?space(8 - i) & string(i, "*")’输出图形 next‘结束

急求VB程序 设计一个简单的四则表达式计算程序 急急急急急!!!_百度...
答:以前整的,可能对你有用,看看吧 VERSION 5.00 Begin VB.Form ExpressionForm Caption = "Expression"ClientHeight = 2310 ClientLeft = 1380 ClientTop = 2100 ClientWidth = 6615 LinkTopic = "Form1"PaletteMode = 1 'UseZOrder ScaleHeight = 2310 ScaleWidth = 6615 Begin VB.TextBox ExprText...

求助,vb编程题。设计一个程序,找出100~900之间的无暇素数
答:Option ExplicitPrivate Sub Command1_Click() Dim i As Integer, ImmaculacyPrimeNumber As Integer Dim InversionNumber, Counter As Integer For i = 100 To 900 ImmaculacyPrimeNumber = 100 * (i Mod 10) + 10 * (i \ 10 Mod 10) + i \ 100 If IsPrimeNumber(i) And IsP...