关于使用VB写一个考试系统

Home Home
引用 | 编辑 catname
2009-05-10 15:54
楼主
推文 x0
这是一个期末个人专题作业,题目是自行发挥,所以我就想要做一个题库系统。
手边已经有一本书(Visual Basic 2008最佳实务讲座,罗慧真 着,恒逸资讯)了,不过我想还需要再去借几本回来看。

开发环境(语言): VB ; 资料库: Access

一开始的构想是,
可以让使用者自行选择考试年度、题数,
之后再从资料 ..

访客只能看到部份内容,免费 加入会员



献花 x0
引用 | 编辑 oryeh
2009-05-10 16:02
1楼
  
时间够,就两种想法分别写出来
写程式就是要不断的尝试不同的方向
多写有益的

献花 x1
引用 | 编辑 catname
2009-05-10 16:17
2楼
  
下面是引用 oryeh 于 2009-05-10 16:02 发表的 : 到引言文
时间够,就两种想法分别写出来
写程式就是要不断的尝试不同的方向
多写有益的


不过...5/20之前就要交,
算时间不太够! 表情


谢谢你!   表情

献花 x0
引用 | 编辑 catname
2009-05-12 12:29
3楼
  
试了好久不没办法做成我所想的样子,
所以就只能按照书上所写的做,
现在面临到另一个问题,
怎么样计算分数? 表情

献花 x0
引用 | 编辑 三仙
2009-05-12 14:19
4楼
  
下面是引用 catname 于 2009-05-12 12:29 发表的 : 到引言文
试了好久不没办法做成我所想的样子,
所以就只能按照书上所写的做,
现在面临到另一个问题,
怎么样计算分数? 表情


建议你把程式po上来
让大大们帮你看
要怎么改或怎么写

献花 x1
引用 | 编辑 catname
2009-05-12 14:34
5楼
  
下面是引用 三仙 于 2009-05-12 14:19 发表的 : 到引言文
 

建议你把程式po上来
让大大们帮你看
要怎么改或怎么写

书上写的都是一些设定的步骤,没有程式码@@"
拉一拉、设定完之后就可以查询了...
    将栏位拉至 Form 设计页面,就会自动产生 DataSet、TableAdapter、
    BindingNavigator 和 BindingSource 了。    

我看 Form.vb 里面也都没有程式码(只是一些载入资料库几行程式码而已!)

表情

所以我不知道怎么开始写...

我ㄧ开始是想...
先读取 Access 的 Table,
然后在每个 Label、RadioButton 上面连结我要所要对应的栏位,
然后在"交卷"这个 Button 写上计算分数的程式码 !

RadioButton 需要和资料库里设定的值比对,
如果相符合就表示得2分,如果没有就是得0分。

不知道我有没有哪里想错,
之后开始动手要写的时候,
发现我根本不懂函式该怎么写...
不知道参数怎么连到栏位...

表情

题外话:
第一次写较大的程式,
之前作业都只是小程式,
有时候太难根本想不出来就只好交尸体...
最后发现,
我根本不会写程式= =


献花 x0
引用 | 编辑 三仙
2009-05-12 18:26
6楼
  
下面是引用 catname 于 2009-05-12 14:34 发表的 : 到引言文
书上写的都是一些设定的步骤,没有程式码@@"
拉一拉、设定完之后就可以查询了...
    将栏位拉至 Form 设计页面,就会自动产生 DataSet、TableAdapter、
    BindingNavigator 和 BindingSource 了。    
我看 Form.vb 里面也都没有程式码(只是一些载入资料库几行程式码而已!)



所以我不知道怎么开始写...

我ㄧ开始是想...
先读取 Access 的 Table,
然后在每个 Label、RadioButton 上面连结我要所要对应的栏位,
然后在"交卷"这个 Button 写上计算分数的程式码 !

RadioButton 需要和资料库里设定的值比对,
如果相符合就表示得2分,如果没有就是得0分。

不知道我有没有哪里想错,
之后开始动手要写的时候,
发现我根本不懂函式该怎么写...
不知道参数怎么连到栏位...



题外话:
第一次写较大的程式,
之前作业都只是小程式,
有时候太难根本想不出来就只好交尸体...
最后发现,
我根本不会写程式= =
    
.......


1.书上写的都是一些设定的步骤,没有程式码@@"拉一拉、设定完之后就可以查询了...
A.如果用物件设定精灵,很难学会"写"程式的

2.我ㄧ开始是想...
A.怎么想都ok,但常看、常改、常写才是最好的方式

3.就只好交尸体...
A.这句话好像以前学校系主任常说

建议你到vb研究小站->vb语言资料库介面  去看一下 http://vb.ncis.com.tw/
还有你要的功能用sql语法是可以很快带出来的
不一定要用物件设定精灵


献花 x1
引用 | 编辑 catname
2009-05-13 15:26
7楼
  
下面是引用 三仙 于 2009-05-12 18:26 发表的 : 到引言文
 

1.书上写的都是一些设定的步骤,没有程式码@@"拉一拉、设定完之后就可以查询了...
A.如果用物件设定精灵,很难学会"写"程式的

2.我ㄧ开始是想...
A.怎么想都ok,但常看、常改、常写才是最好的方式

3.就只好交尸体...
A.这句话好像以前学校系主任常说

建议你到vb研究小站->vb语言资料库介面  去看一下 http://vb.ncis.com.tw/
还有你要的功能用sql语法是可以很快带出来的
不一定要用物件设定精灵


谢谢你!
之前有看过这个网站,
但还有个疑问是...
VB6 和 VB2005 应该是有通的吧XD ?

献花 x0
引用 | 编辑 catname
2009-05-14 20:21
8楼
  
放弃连资料库了,
决定把资料先放在程式码里(阵列)! 表情

不知道是不是少安装什么东西,
载入资料库的程式码都一直出现未定义! 表情 (有照VB研究小站里的写)

献花 x0
引用 | 编辑 三仙
2009-05-15 01:33
9楼
  
 
下面是引用 catname 于 2009-05-14 20:21 发表的 : 到引言文
放弃连资料库了,
决定把资料先放在程式码里(阵列)! 表情

不知道是不是少安装什么东西,
载入资料库的程式码都一直出现未定义! 表情 (有照VB研究小站里的写)


1.放弃连资料库
A.这么快就放弃了哦表情

2.载入资料库的程式码都一直出现未定义
A.未定义??你的步骤能够说一下吗表情

献花 x0
引用 | 编辑 catname
2009-05-15 09:43
10楼
  
下面是引用 三仙 于 2009-05-15 01:33 发表的 : 到引言文
 

1.放弃连资料库
A.这么快就放弃了哦表情

2.载入资料库的程式码都一直出现未定义
A.未定义??你的步骤能够说一下吗表情


1.因为时间快来不及了@@"
  所以只能先放弃使用连结资料库这个方法...

2.

首先我打了这段程式码载入资料库,


Private Sub Command1_Click
  Set Cn = CreateObject("ADODB.Connection")
  Set Rs = CreateObject("ADODB.Recordset")
End Sub


是Cn和Rs 出现绿色弯曲底线。(我想是下面要再用到Cn和Rs底线才会消失)

之后我试了VB研究小站 提供的 "透过OLEDB载入MDB资料库" 程式码,
但是它的 ADODB.Connection 和 ADODB.Recordset 一直出现有蓝色弯曲底线,
(型别 'ADODB.Connection' 未定义 和型别 'ADODB.Connection' 未定义)
然后 ADODB.Connection 有建议我应该改成 Odbc.OdbcConnection 或 Data.Odbc.OdbcConnection 或 OleDb.OleDbConnection 或 Data.OleDbConnection
ADODB.Recordset 则没有建议,只显示未定义。

VB研究小站有提供另外一个连资料库的方法,但是我一直找不到它上面说的引用项目,所以这个方法就不能用。

所以可能是我哪里没有设定好,或是哪个东西没有安装的问题吧! 表情


知道不能一步登天,
但时间急迫,
所以就先放弃连资料库了! 表情

现在是用 Select Case 方法把资料打上去,再做连结!

献花 x0
引用 | 编辑 catname
2009-05-15 12:41
11楼
  

这是目前设计的页面,
"上一题"、"下一题"和"答案"的 Button 都可以按了。
答案可以显示对或错。

我想到,
设一组阵列来储存每一题的分数,
最后再将阵列里的分数做加总!

但有一个问题是,

假如我在第一题选第二个选项后再按下一题的选项会停留在第二个选项,
又假如在第二题选了第一个选项后,
想要再回上一题更改选项,
会发现原先的第一个的选项会发现变成第一个选项!

不知道要怎么把RadioButton的选项传到我设的阵列里。

怎样固定 RadioButton ?

献花 x0
引用 | 编辑 三仙
2009-05-15 14:02
12楼
  

图 1.
单选题目与答案1
图 2.
单选题目与答案2
图 3.
vb6.0程式码
图 4.
access题库1
图 5.
access题库2

资料乱数取样不多
所以放弃多按几次就会跑第二题了
图片的部份供你参考
完整的程式等我市场批货回来
再开新帖上传

献花 x1
引用 | 编辑 三仙
2009-05-15 17:52
13楼
  
下面是引用 catname 于 2009-05-15 12:41 发表的 : 到引言文
[attachment=520623]
这是目前设计的页面,
"上一题"、"下一题"和"答案"的 Button 都可以按了。
答案可以显示对或错。

我想到,
设一组阵列来储存每一题的分数,
最后再将阵列里的分数做加总!

但有一个问题是,

假如我在第一题选第二个选项后再按下一题的选项会停留在第二个选项,
又假如在第二题选了第一个选项后,
想要再回上一题更改选项,
会发现原先的第一个的选项会发现变成第一个选项!

不知道要怎么把RadioButton的选项传到我设的阵列里。

怎样固定 RadioButton ?


你讲得很乱表情
不过不知道要怎么把RadioButton的选项传到我设的阵列里
这个建议你用click事件来处理

献花 x1
引用 | 编辑 catname
2009-05-15 19:22
14楼
  
非常感谢你! 表情

但是都会有蓝色的弯曲底线...

我想会不会是 VB6 和 VB2005 的写法是不一样的呢?

献花 x0
引用 | 编辑 三仙
2009-05-15 22:17
15楼
  

图 1.
VB2003部份截图,cn并无错误,供你参考

下面是引用 catname 于 2009-05-15 19:22 发表的 : 到引言文
非常感谢你! 表情

但是都会有蓝色的弯曲底线...

我想会不会是 VB6 和 VB2005 的写法是不一样的呢?


上一篇的程式码是可以将VB6.0转成2003的

其他版本照理说应该也是可以的吧

M$的东西大概都是"向下"相容

献花 x1
引用 | 编辑 catname
2009-05-16 14:02
16楼
  






   

我发现 VB2005 有个内建的自动升级 VB6 的程式码,

但升级完后 connection 还是会有蓝色弯曲底线! @@"

然后 set 打上去后,会自动消失~~

献花 x0
引用 | 编辑 三仙
2009-05-16 18:31
17楼
  

图 1.
引用adodc元件1.jpg
图 2.
定义adodb时出视的下拉选项.jpg
图 3.
定义adodb时出视的下拉选项2.jpg
图 4.
定义adodb时出视的下拉选项3.jpg
图 5.
定义完成.jpg

下面是引用 catname 于 2009-05-16 14:02 发表的 : 到引言文






   

我发现 VB2005 有个内建的自动升级 VB6 的程式码,

但升级完后 connection 还是会有蓝色弯曲底线! @@"

然后 set 打上去后,会自动消失~~


我看了你的图后
才发现你没有引用元件
上传引用方法供你参考

献花 x1