⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.frm

📁 酒店管理VB源码
💻 FRM
📖 第 1 页 / 共 2 页
字号:
         TabIndex        =   2
         Text            =   "Form1.frx":000A
         Top             =   1440
         Width           =   3615
      End
      Begin VB.TextBox TextcmCount 
         Height          =   375
         Left            =   1320
         TabIndex        =   1
         Text            =   "100000"
         Top             =   3240
         Width           =   2475
      End
      Begin VB.Label Label8 
         Caption         =   " CPU周期计数:"
         Height          =   255
         Left            =   60
         TabIndex        =   17
         Top             =   4320
         Width           =   1275
      End
      Begin VB.Label Label7 
         Caption         =   "  函数值:"
         Height          =   255
         Left            =   420
         TabIndex        =   15
         Top             =   3840
         Width           =   915
      End
      Begin VB.Label Label6 
         Caption         =   "计算次数:"
         Height          =   255
         Left            =   420
         TabIndex        =   13
         Top             =   3360
         Width           =   915
      End
      Begin VB.Label Label5 
         Caption         =   "计算的表达式:"
         Height          =   255
         Left            =   180
         TabIndex        =   12
         Top             =   1200
         Width           =   1395
      End
      Begin VB.Label Label4 
         Caption         =   "d:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   12
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   2040
         TabIndex        =   11
         Top             =   780
         Width           =   315
      End
      Begin VB.Label Label3 
         Caption         =   "c:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   12
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   180
         TabIndex        =   9
         Top             =   780
         Width           =   315
      End
      Begin VB.Label Label2 
         Caption         =   "b:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   12
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   2040
         TabIndex        =   7
         Top             =   360
         Width           =   315
      End
      Begin VB.Label Label1 
         Caption         =   "a:"
         BeginProperty Font 
            Name            =   "宋体"
            Size            =   12
            Charset         =   134
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   180
         TabIndex        =   5
         Top             =   360
         Width           =   315
      End
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit


'例子GetFunctionValue的使用,即直接传递参数值来调用
Private Sub CommandXXX_Click()
    Dim cm As CCompile  ' 声明新的表达式编译类CCompile
    Set cm = New CCompile
    Dim x As Double
    Dim a() As Double
    Dim i As Long, Count As Long
    Dim t0 As Double
    
    ReDim a(0 To 3) As Double
    a(0) = Me.TextcmA.Text  ' 获取参数值
    a(1) = Me.TextcmB.Text
    a(2) = Me.TextcmC.Text
    a(3) = Me.TextcmD.Text
    
    If cm.SetText(Me.TextcmText.Text, "a,b,c,d", True) Then  ' 设置编译的表达式和参数,并自动编译
    
        Count = Me.TextcmCount.Text
                
        t0 = cm.GetCPUCount()   ' 获得当前CPU的周期计数
        For i = 0 To Count - 1
            x = cm.GetFunctionValue(a)   ' 返回表达式的值 给变量 x (直接传递参数值来调用)
        Next i
        t0 = cm.GetCPUCount - t0  ' 得到运行时用去的CPU周期计数
        
        Me.TextcmCPUCount.Text = t0
        Me.TextcmValue.Text = x
        
    Else
        Me.TextcmCPUCount.Text = ""
        Me.TextcmValue.Text = "编译时发生错误!"
    End If
    

End Sub


'例子 通过得到的参数地址来改变参数的值
'  通过名称也可以修改参数值,但速度较慢
Private Sub Commandcm_Click()
    Dim cm As CCompile  ' 声明新的表达式编译类CCompile
    Set cm = New CCompile
    
    Dim x As Double
    Dim a As Double, b As Double, c As Double, d As Double
    Dim Pa As Long, Pb As Long, Pc As Long, Pd As Long
    Dim i As Long, Count As Long
    Dim t0 As Double
    
    a = Me.TextcmA.Text  ' 获取参数值
    b = Me.TextcmB.Text
    c = Me.TextcmC.Text
    d = Me.TextcmD.Text
    
    If cm.SetText(Me.TextcmText.Text, "a,b,c,d", True) Then  ' 设置编译的表达式和参数,并自动编译
    
        Pa = cm.GetParameterAddress("a")  ' 得到参数的地址
        Pb = cm.GetParameterAddress("b")
        Pc = cm.GetParameterAddress("c")
        Pd = cm.GetParameterAddress("d")
        
        Count = Me.TextcmCount.Text
        
        Call cm.SetParameterA(Pa, a) ' 设置表达式中参数的值
        Call cm.SetParameterA(Pb, b) ' 这几句代码可以放在循环中
        Call cm.SetParameterA(Pc, c) ' 这样可以不断的改变参数的值
        Call cm.SetParameterA(Pd, d)
        
        t0 = cm.GetCPUCount()   ' 获得当前CPU的周期计数
        For i = 0 To Count - 1
            x = cm.GetValue()   ' 返回表达式的值 给变量 x
        Next i
        t0 = cm.GetCPUCount - t0  ' 得到运行时用去的CPU周期计数
        
        Me.TextcmCPUCount.Text = t0
        Me.TextcmValue.Text = x
        
    Else
        Me.TextcmCPUCount.Text = ""
        Me.TextcmValue.Text = "编译时发生错误!"
    End If
    
End Sub


Private Sub Commandcmcx_Click()
    Dim cmcx As CCompileComplex  ' 声明新的表达式编译类CCompileComplex
    Set cmcx = New CCompileComplex
    Dim x As TComplex
    Dim a As TComplex, b As TComplex, c As TComplex, d As TComplex
    Dim Pa As Long, Pb As Long, Pc As Long, Pd As Long
    Dim i As Long, Count As Long
    Dim t0 As Double
    
    Dim TextComplexOk As Boolean
    
    TextComplexOk = True
    TextComplexOk = TextComplexOk And cmcx.StrToComplex(Me.TextcmcxA.Text, a.Real, a.Imag) ' 获取参数值
    TextComplexOk = TextComplexOk And cmcx.StrToComplex(Me.TextcmcxB.Text, b.Real, b.Imag)
    TextComplexOk = TextComplexOk And cmcx.StrToComplex(Me.TextcmcxC.Text, c.Real, c.Imag)
    TextComplexOk = TextComplexOk And cmcx.StrToComplex(Me.TextcmcxD.Text, d.Real, d.Imag)
    
    If Not TextComplexOk Then
        Me.TextcmcxCPUCount.Text = ""
        Me.TextcmcxValue.Text = "复数参数书写格式错误!"
    ElseIf (cmcx.SetText(Me.TextcmcxText.Text, "a,b,c,d", True)) Then  ' 设置编译的表达式和参数,并自动编译
    
        Pa = cmcx.GetParameterAddress("a")  ' 得到参数的地址
        Pb = cmcx.GetParameterAddress("b")
        Pc = cmcx.GetParameterAddress("c")
        Pd = cmcx.GetParameterAddress("d")
        
        Count = Me.TextcmcxCount.Text
        
        Call cmcx.SetParameterA(Pa, a.Real, a.Imag) ' 设置表达式中参数的值
        Call cmcx.SetParameterA(Pb, b.Real, b.Imag) ' 这几句代码可以放在循环中
        Call cmcx.SetParameterA(Pc, c.Real, c.Imag) ' 这样可以不断的改变参数的值
        Call cmcx.SetParameterA(Pd, d.Real, d.Imag)
        
        t0 = cmcx.GetCPUCount()   ' 获得当前CPU的周期计数
        For i = 0 To Count - 1
            Call cmcx.GetValue(x.Real, x.Imag)   ' 返回表达式的值 给变量 x
        Next i
        t0 = cmcx.GetCPUCount - t0  ' 得到运行时用去的CPU周期计数
        
        Me.TextcmcxCPUCount.Text = t0
        Me.TextcmcxValue.Text = cmcx.ComplexToStr(x.Real, x.Imag)
        
    Else
        Me.TextcmcxCPUCount.Text = ""
        Me.TextcmcxValue.Text = "编译时发生错误!"
    End If
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -