从mysql加载菜单到treeview,求方法[已解决]
本帖最后由 xyhqqaa 于 2020-10-22 14:37 编辑菜鸟求助,数据库结构如上,一级菜单,二级菜单,三级菜单。但是调试了好几次,要嘛一级菜单好几个重复的,无法整合在一起。,求大佬给个思路想法,比如修改代码,或者修改数据库结构之类的。
大致代码如下,原本想先查询一级菜单,再查询二级菜单,再合并再一起,结果好像有问题,显示还是异常- -!!论坛例子好多是加载ini配置文件的,如果用数据库怎么才比较方便呢,求大佬有空指教下
Func _moduletree() ;加载菜单
_MySQL_InitLibrary() ;调用libmysql.dll
If @error Then Exit MsgBox(0, '',@error)
$MysqlConn = _MySQL_Init() ;初始化MYSQL连接实例对象
$connected = _MySQL_Real_Connect($MysqlConn, $Host, $User, $Pass, $Database, $Port) ;链接数据库
_MySQL_Query($connected, "SET NAMES gbk") ;设置编码,防止中文乱码
$firstquery = "SELECT DISTINCT firstrow,secrow from moduletree" ;查询语句
_MySQL_Query($MysqlConn, $firstquery)
$res = _MySQL_Store_Result($MysqlConn) ;返回结果集
$rowsj = _MySQL_Num_Rows($res) ;返回结果集中的行数
$arrayj = _MySQL_Fetch_Result_StringArray($res)
For $j = 1 To $rowsj
$TreeView1_[$j]=GUICtrlCreateTreeViewItem($arrayj[$j], $TreeView1)
GUICtrlCreateTreeViewItem($arrayj[$j], $TreeView1_[$j])
Next
_MySQL_Free_Result($res) ;释放 查询纪录吧
EndFunc ;==>_moduletree
用读取INI显示Tree
chzj589 发表于 2020-10-21 18:29
用读取INI显示Tree
谢谢,之前有考虑ini,但是觉得更新不方便。我再想想其他方式,感谢您的回复 这个如果会用ini创建列表,读取其它任意数据创建列表应该也没什么问题,唯一的区别只是读取过程。
ini简单方便,不需要安装其它办公软件,除非大型数据或特殊需求,个人认为没必要舍近求远 afan 发表于 2020-10-22 13:51
这个如果会用ini创建列表,读取其它任意数据创建列表应该也没什么问题,唯一的区别只是读取过程。
ini简单 ...
好,那听A大大的:face (1): xyhqqaa 发表于 2020-10-22 14:35
好,那听A大大的
麻烦一点,读取数据库写入INI,然后读取INI显示Tree。
这样数据库有变化,INI也随之变化,Tree也随时更新 chzj589 发表于 2020-10-22 15:35
麻烦一点,读取数据库写入INI,然后读取INI显示Tree。
这样数据库有变化,INI也随之变化,Tree也随时更 ...
已用嵌套的方式从数据库读取到菜单了。。~~感谢大家 值得学习 值得学习
页:
[1]