请教以下功能如何实现:
窗体左边为一树型菜单,菜单有两级:部门,员工。
窗体右边为一DBGRID控件,当在树型菜单中点击某部门时,DBGRID控件中显示该部门信息,点击某员工时,显示该员工信息。
部门信息和员工信息为两个不同的数据表。这个问题对大家来说可能很简单,不过我很菜,还请大家仔细解答。
窗体左边为一树型菜单,菜单有两级:部门,员工。
窗体右边为一DBGRID控件,当在树型菜单中点击某部门时,DBGRID控件中显示该部门信息,点击某员工时,显示该员工信息。
部门信息和员工信息为两个不同的数据表。这个问题对大家来说可能很简单,不过我很菜,还请大家仔细解答。
解决方案 »
- File not found: 'TFlatPanelUnit.dcu' 如何解决啊
- 如何查询两个列的重复数据
- 帮忙看看delphi能不能实现以下效果
- DBGRID转成DBGRIDEH问题
- 当WINDOW删除文件时怎么样能给出自己的对话框来确定是否真的删除文件
- 在delphi中怎么样使Timage控件显示gif格式的图片?
- ★★★什么是"刷屏"?有什么用?
- 能否提供一个简单的三层结构的范例--
- 毛遂自荐---一个今年7月将离校的大学生(那不到毕业证),想在广东找工作
- ?与属性相关事件的屏蔽?
- 简简单单的问题一个小时后结帖
- TSpeedButton的Enable := False后不显示按钮图片了?
判断条件为:字段名=treeview。.Selected.Text
上面的解决方法可以if treeview.selected=nil then
exit;
sSql:='select * from table1 where key1='+treeview.selected.text;
with query do
begin
close;
sql.clear;
sql.add(sSql);
try
Open();
except
exit;
end;
end;
var
TreeNode : TTreeNode;
Query1.Sql.Add('select 部门名称 from 部门表');
Query1.Open;
while not Query1.EOF do
begin
TreeNode := TreeView1.Items.Add(nil,Query1.FieldByName('部门名称').AsString);
Query2.Add('select 员工姓名 from 员工表');
Query2.Open;
while not Query2.EOF do
begin
TreeView1.Items.Add(TreeNode,Query2.FieldByName('员工姓名').AsString);
end;
end;
兄弟,给分!
procedure InitTree;
var
TreeNode : TTreeNode;
begin
Query1.Sql.Add('select 部门名称 from 部门表');
Query1.Open;
while not Query1.EOF do
begin
TreeNode := TreeView1.Items.Add(nil,Query1.FieldByName('部门名称').AsString);
Query2.Add('select 员工姓名 from 员工表');
Query2.Open;
while not Query2.EOF do
begin
TreeView1.Items.Add(TreeNode,Query2.FieldByName('员工姓名').AsString);
end;
end;
end;