当前位置:编程学习 > VB >>

关于VB学习

编写一个简易学生成绩管理系统,要求输入姓名和成绩,点击“添加”按钮后,在文本框中追加并换行显示“姓名”、“成绩”和“合格”或“不合格”信息
追问:如果按照≥90为“优”,≥80为“良”,≥70为“中”,≥60为“及格”,<60为“不及格”来划分并显示上述信息。应该如何解决?

答案:建议右边的框使用listbox控件比较容易让人看懂

代码如下:

Private Sub Command1_Click()
    If Text1.Text <> "" And Text2.Text <> "" Then
        If Val(Text2.Text) >= 60 Then
            sfjg = "及格"
        Else
            sfjg = "不及格"
        End If
        List1.AddItem (Text1.Text & Chr(9) & Text2.Text & Chr(9) & sfjg)
    End If
End Sub

一楼的那位写的就可以    但是这样的数据是不会被保存的

教你用Access数据库做一个简单的

先建一个Access数据库

新建查询建张表

create table tbUser

(

    id int identity(1,1),

    name text(10),

    cj int,

    dj text(10)

)

 

 

建好表后VB新建工程在工程菜单中点引用

引用这个

然后再添加新部件

 

把那个显示数据的文本框换成dategrid控件

再加入一个ado控件 名字起adodc 并让它隐藏

名字文本框叫txtone

成绩叫txttwo

显示数据的dategrid控件叫dgOne

按钮叫cmdone

 

开始写代码

'这些写在代码区的最上面 也就是通用区

Dim Conn As ADODB.Connection            'Conn引用链接
Dim Cmd As ADODB.Command                '定义了将对数据源执行的指定命令
Dim Rst As ADODB.Recordset              '表示的是来自命令执行结果的记录全集(但任何时候都表示记录集中的单个记录)
Dim StrSql As String                    '定义SQL查询

 

'这些代码中控件的名字你改一下就好

Private Sub cmdone_Click()

    dim dj as string
    Set Conn = New ADODB.Connection         '将对象引用赋给变量,set和new一起使用将创建该类的一个新实例(Connection新连接)
    Set Rst = New ADODB.Recordset           '新建一个记录集

 

'这里用if语句判断一下数据是否填写完整 如果不完整 exit sub

 

    if cint(txttwo.text)>=60 then

        dj="合格"

    else

        dj="不合格"

    end if

 

    Set Conn = New ADODB.Connection             '引用一个新的连接
    Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + App.Path + "\db.mdb; "       '找到数据源
    Conn.CursorLocation = adUseClient           '设置或返回游标服务的位置,adUseClient使用由本地游标库提供的客户端游标
    Conn.Open

    'SQL语句保存
    StrSql = "insert into tbUser values('" + Trim(txtOne.Text) + "'," + cint(Trim(txtTwo.Text)) + ",'" + trim(dj)+ "')"


    Set Cmd = New ADODB.Command         '引用对数据库新的执行命令
    Cmd.ActiveConnection = Conn         '引用链接对象
    Cmd.CommandType = adCmdText         '将CommandText用以文本化定义返回给提供者,可更好的执行命令,CommandType可指示Command的类型
    Cmd.CommandText = StrSql            '将SQL语句赋予Cmd,CommandText包含即将发送的命令的文本
    Cmd.Execute                         '在数据库中执行SQL语句
    Conn.Close                          '断开连接
    Set Conn = Nothing     

    Set Cmd = Nothing

 

    MsgBox "添加成功!"                 '弹出提示

    me.Adodc.Refresh              '刷新(重新读取数据库)
    me.dgOne.Refresh

    txtOne.Text = ""                    '清空记录
    txtTwo.Text = ""

End Sub

Private Sub Form_Load()
    'ADO控件连接数据库
    Adodc.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + App.Path + "\db.mdb; "      '找到数据源
    Adodc.CursorType = adOpenStatic         '引用一个静态变量
    Adodc.CommandType = adCmdText           '返回一个记录集的查询
    '返回基本表
    Adodc.RecordSource = "select,name as 姓名,cj as 成绩,dj as 等级 from tbUser"
    Adodc.Refresh           '刷新整表
   
    Set dgOne.DataSource = Adodc       '返回或设置一个数据源,通过该数据源,数据使用者被绑定到一个数据库
    dgOne.Refresh                      '刷新整表
End Sub

 

基本就是这个样子了   楼主还有什么不会的+QQ 471473759

Private Sub Command1_Click()
    Dim xm, fs, dj
    xm = Me.Text1.Text
    fs = Me.Text2.Text
    dj = ""
   
    If fs >= 60 Then
        dj = "合格"
    Else
        dj = "不合格"
    End If
   
    Dim str, str1
    str = xm & Space(10) & fs & Space(10) & dj
   
   
    str1 = Me.Text3.Text
   
    Me.Text3.Text = str1 & vbCrLf & str
End Sub

Private Sub Form_Load()
    Me.Text3.Text = "姓名" & Space(10) & "分数" & Space(10) & "等级" & vbCrLf
End Sub


 

上一个:vb截图代码
下一个:VB是什么?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,