Delphi 有好象Windows NT的把用户加入到组的功能的控件?既可用鼠标选一个,也可用鼠标选多个(100分)

  • 主题发起人 主题发起人 Edward
  • 开始时间 开始时间
E

Edward

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高手大侠:

Hi!

我现在用Delphi写一个考勤软件,请教1个问题,

1. Delphi 有如此功能的一个控件?
它就好象Windows NT的把用户加入到组的功能,
一个类似listBox的控件,

先选中一个部门,加入职员到部门:
该控件1显示所有不属于任何部门的职员,
在该控件,既可用鼠标选一个,也可用鼠标选多个职员,然后点击一个按钮,
该控件2 (显示所有属于该部门的职员),就显示刚才新加入的职员。
删除的道理同样。


现在我是一个一个职员加入到部门的,但该单位有1000多人,
则这样效率很低。

如果没有此功能的控件,有何更好的方法实现。


Thanks !!!


Edward
2000.12.12

edward168@21cn.com
edward168@163.com


 
你想到也太好了啊,自己慢慢做吧
 
多谢网易虚拟社区广州站Delphi帮主kingron大侠,赵亦平大侠指点,我花一个上午完成了。

Thanks !!!


Edward
2000.12.13

edward168@21cn.com
edward168@163.com
OICQ: 33034891


// From Table Add to ListBox
procedure TForm_Department_Staff.Button_AddListBoxClick(Sender: TObject);
begin
with ListBox1,DataModule_CheckSystem.Table_Staff do
begin
Items.Clear;
Close;
Open;
First;

while not eof do
begin
Items.Add(FieldByName('st_id').Value);
Next;
end;

end;
end;


// From ListBox1 Add to ListBox2
procedure TForm_Department_Staff.Button_AddClick(Sender: TObject);
var
Iitemno,Ino: Integer;
begin
Iitemno:=0;
with ListBox1 do
for Ino:=0 to Items.Count-1 do
begin
if Selected[Ino] then
begin
Iitemno:=Ino;
Break;
end;
end;


with ListBox1 do
begin
ListBox2.Items.Clear;

for Ino:=Iitemno to Iitemno+(ListBox1.SelCount-1) do
begin
ListBox2.Items.Add(Items[Ino]);
end;
end;
end;





发信人: kingron, 信区: Delphi
标题: Re:Delphi 有好象Windows NT的把用户加入到组的控件?既可用鼠标选
发信站: 网易虚拟社区 广州站(2000年12月12日 17时01分27秒)

哎,用listbox就可以啊,将listbox的MultiSelect属性设置为True就可以一次选中多个!然后用selectcount等等属性将选中的items加入到另外一个listbox中就可以了!


赵亦平大侠
// TListBox可以多选啊!
 
为什么不用listview呢?
 
多人接受答案了。
 
后退
顶部