(24)uniGUI for C++ builder表格篇之UniDBTreeGrid树表格的研究

                                                                          (中行雷威2018.9.26)

(同一个世界,同一个梦想,交流学习C++Builder XE10,传承c++builder的魅力!欢迎各地朋友加入我的QQ群484979943、860634510、299497712,进群密码“BCB”,同时也请将该群号广为宣传,希望能够广集各方高手,共同进步。如需下载开发工具及源代码请加入我的QQ群。)

【阅读倡议】

1、有问题请留言;

2、没问题请点赞;

3、看连载请加群;

4、下源码请加群;

【开发工具】

1、C++Builder10.2.3 tokyo

2、FMSoft_uniGUI_Complete_Professional_1.10.0build1480(正版)

3、uniDAC万能数据库访问控件

4、oracle11g

本人主笔的国内第一本uniGUI教学案例代码已诞生,分为cbuilder和delphi两个版本,买代码送手册,需要的朋友可以加入我的QQ技术交流群484979943、860634510、299497712给我(群主)留言。资料简介:https://blog.youkuaiyun.com/dlboy2018/article/details/88923832

一、研究目标

开发一个表格,让某个字段带有一定的归属关系展示,如下图city_name。

二、技能分析

为实现上述目标,数据表必须有一个字段用来构建多级树结构,另外有两个字段分别标识记录ID和记录的所属ID。

三、表格设计

本例计划用城市区域和所属城市名称构成树结构表格,city_name将作为树节点,city_id和city_pid将分别记录每个记录的编号和所属节点的编号。

四、项目设计

新建一个项目,放几个数据库连接和查询访问的相关控件和一个UniDBTreeGrid控件。如下图所示:

UniDBTreeGrid1的datasource指向UniDataSource1

UniDataSource1的dataset指向UniQuery1

UniQuery1的connection指向UniConnection1

UniConnection1的providername指向OracleUniProvider1

双击UniConnection1,先配置一下数据库连接关键字,包括驱动类型Provider:oracle数据库,server名称:填你的数据库连接串,用户名+密码,然后点Connect测试连接。如果连接失败,请先确认你本机数据库管理工具能否通过你输入的server字符串访问目标数据库。

配置完后,左侧的对应属性将变化如下,将

关键点:将UniDBTreeGrid1的IdField属性设为city表格的id字段(city_id),将UniDBTreeGrid的IdParentField设为city表格的pid(city_pid)

void __fastcall TMainForm::UniBitBtn1Click(TObject *Sender)
{//查询数据按钮,显示树机构表格
UniQuery1->Close();
UniQuery1->SQL->Clear();
UniQuery1->SQL->Add("select city_name,city_cold,city_id,city_pid from city");
UniQuery1->Open();
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::UniBitBtn2Click(TObject *Sender)
{//取字段按钮,获取点击记录的某个字段值
String tmpStr;
tmpStr=UniDBTreeGrid1->DataSource->DataSet->FieldByName("city_name")->AsString;
ShowMessageN(tmpStr);
}
//---------------------------------------------------------------------------
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值