微软程序员考试题
一个表中有四个字段(下面语句中有)
一个窗体中有一个COMMAND1按钮,和一个DATAGRID1网格控件
Private Sub Command1_Click()
sqlstr = "select kh_bh_number as 编号,kh_name as 姓名,kh_tel as 电话,kh_add as 地址 from khxx order by kh_bh_number "
Set Rs = Cn.Execute(sqlstr)
If Not Rs.EOF Then
Set DataGrid1.DataSource = Rs
DataGrid1.Columns(0).Width = 800
DataGrid1.Columns(1).Width = 1000
DataGrid1.Columns(2).Width = 1000
DataGrid1.Columns(3).Width = 5050
Else
sqlstr = "select ' ' as 编号,' ' as 姓名,' ' as 电话,' ' as 地址"
Set RsB = Cn.Execute(sqlstr)
Set DataGrid1.DataSource = RsB
DataGrid1.Columns(0).Width = 800
DataGrid1.Columns(1).Width = 1000
DataGrid1.Columns(2).Width = 1000
DataGrid1.Columns(3).Width = 5050
end If
End Sub
现在要求是点击DATAGRID1的表头,按表头上的列排序(如点击”电话“,按电话排序,点击”地址“按地址排序),最好是不要再次执行SQL语句。
代码怎么写。
附:微软程序员考试题目:
有两个相临房间,其中有一个房间(甲)里有三盏灯泡,另一个房间(乙)里有三个开关,分别控制甲房间里的三盏灯,要求是每个房间只能进去一次,判断哪个开关控制哪盏灯。最好是不用辅助工具。
请先回答第一个问题好吗?
马上加份。
问题点数:65、回复次数:13Top
1 楼ltpao(啊炮)回复于 2002-01-28 08:47:48 得分 0
设置Rs的Sort属性即可Top
2 楼ltpao(啊炮)回复于 2002-01-28 08:52:39 得分 10
如 .Sort="编号 ASC";.Sort="姓名 ASC"...
反序.Sort="编号 DESC";.Sort="姓名 DESC"...
Top
3 楼mousefly(Alien)回复于 2002-01-28 08:53:36 得分 10
进乙打开2盏灯,等一会儿,关一盏灯,再进甲,亮的是哪一个应该知道,关的用手摸一摸,分热的和凉的,哪一个应该知道了吧。Top
4 楼chinasqf()回复于 2002-01-28 09:05:06 得分 0
DATAGRID1.SORT="编号 ASC" ?Top
5 楼chinasqf()回复于 2002-01-28 09:06:16 得分 0
Private Sub DataGrid1_Click()
With DataGrid1
.Sort = "编号 ASC"
.Sort = "姓名 ASC"
.Sort = "电话 ASC"
.Sort = "地址 ASC"
End With
End SubTop
6 楼chinasqf()回复于 2002-01-28 09:11:30 得分 0
在什么事件里用RS.SORT=""Top
7 楼lzy5042()回复于 2002-01-28 09:12:21 得分 0
mousefly(Alien):呵呵呵。。。
我的方法是打开开关。把灯泡卸下来。让后用手去摸。只要在临死前大喊。就是这个。。。就可以知道哪个开关控制哪个灯泡了。。呵呵
---------
开个玩笑。。Top
8 楼flyflyfly_woo(flyfly)回复于 2002-01-28 09:31:15 得分 0
灯泡问题楼上的两位的想法真是绝啊!呵呵Top
9 楼Chimae(David)回复于 2002-01-28 09:41:31 得分 0
进一个房间打开两个开关,关闭一个开关,在进另一个房间,亮的是开着得很明显,热的是刚才开过的,冷的是没开过的呀!呵呵!不知道是否令你满意!Top
10 楼hzyzx(无情剑)回复于 2002-01-28 09:51:26 得分 45
Private Sub DateGrid1_HeadClick(ByVal ColIndex As Integer)
With recordset
Select Case ColIndex
Case 0 'dategrid1的第一列
.Sort = "姓名" & " ASC"
Case 1'dategrid1的第2列
.Sort = "编号" & " ASC"
End Select
End With
DateGrid1.Refresh
endTop
11 楼hzyzx(无情剑)回复于 2002-01-28 09:52:13 得分 0
Private Sub DateGrid1_HeadClick(ByVal ColIndex As Integer)
With recordset
Select Case ColIndex
Case 0 'dategrid1的第一列
.Sort = "姓名" & " ASC"
Case 1'dategrid1的第2列
.Sort = "编号" & " ASC"
End Select
End With
DateGrid1.Refresh
end subTop
12 楼chinasqf()回复于 2002-01-28 10:19:27 得分 0
thanksTop
13 楼chinasqf()回复于 2002-01-28 10:21:18 得分 0
okTop




