[求助]关于treeview问题

hooligan31000 2004-01-16 05:53:45
我在做学生管理器中碰到了问题,treeview连接数据库(student.mdb只有一个表),字段为“班级”,“姓名”等等。
如何在treeview实现点击“年级”打开“班级”,再打开“姓名”
实现“一班”的学生“姓名”,“二班”学生姓名
怎么来判断“一班”“二班”的学生?
谢谢!
...全文
46 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
王伟晔 2004-01-17
  • 打赏
  • 举报
回复
父节点标记!
华芸智森 2004-01-17
  • 打赏
  • 举报
回复
不分开当然可以.
取表级和SQL语句.
SELECT DISTINCT(CLASSNAME) FROM TABLENAME ORDER BY CLASSNAME
节点名称用是班级名称.

取学生姓名的语句.
SELECT * FROM TABLENAME WHERE CLASSNAME='" & NODE.TEXT & "' ORDER BY STUNAME"
hooligan31000 2004-01-17
  • 打赏
  • 举报
回复
up
hooligan31000 2004-01-16
  • 打赏
  • 举报
回复
ding
hooligan31000 2004-01-16
  • 打赏
  • 举报
回复
不分开可以实现吗?
华芸智森 2004-01-16
  • 打赏
  • 举报
回复
最好重新设计你的数据库将班级和学生分开.
例如:
班级表.
CREATE TABLE CLASSTABLE(CLASSID LONG NOT NULL,CLASSNAME VARCHAR(32) NULL)
学生表
CREATE TABLE STUTABLE(CLASSID LONG NOT NULL,STUID VARCHAR(32) NOT NULL,STUNAME VARCHAR(16) NULL)

加载到TREEVIEW时,你只要添加表CLASSTABLE的内容.
SQLECT * FROM CLASSTABLE ORDER BY CLASSID
NODE的标签名是.CLASSNAME,NODEKEY是 "C" & CLASSID

在NODECLICK事件中.
STRSQL="SELECT * FROM STUTABLE WHERE CLASSID='" & RIGHT$(NODE.KEY,LEN(NODE.KEY)-1) & "' ORDER BY STUID"

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧