5,392
社区成员
发帖
与我相关
我的任务
分享
procedure TForm9.bsSkinTreeView1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Series: TpieSeries;
begin
if bsskintreeview1.Selected.Text = '性别' then
//点中第一个根节点后
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 ');
adoquery1.open;
sumday1:=adoquery1.RecordCount;
end
else if bsskintreeview1.Selected.Text = '男' then
//点中第二个根节点后
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 where 性别=''男''');
adoquery1.open;
sumday2:=adoquery1.RecordCount;
end
else if bsskintreeview1.Selected.Text ='女' then
//点中第二个根节点后
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 where 性别=''女''');
adoquery1.open;
sumday3:=adoquery1.RecordCount;
Series := TpieSeries.Create(Chart1);
Series.Add(100, '男 '''+floattostr((sumday2/sumday1)*100)+'''''%', clRed);
Series.Add(200, '女 '''+floattostr((sumday3/sumday1)*100)+'''''%', clGreen);
Chart1.AddSeries(Series);
end;
end;
procedure TForm9.bsSkinTreeView1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if bsskintreeview1.Selected = nil then exit;
if bsskintreeview1.Selected.Text = '性别' then
//点中第一个根节点后
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 ');
adoquery1.open;
Chart1.SeriesList[1].Active := False;
Chart1.SeriesList[0].Active := True;
Chart1.SeriesList[0].Clear;
Series1.Add(sumday2, '男 ', clRed);
Series1.Add(sumday3, '女 ', clGreen);
end
else if bsskintreeview1.Selected.Text = '男' then
//点中第二个根节点后
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 where 性别=''男''');
adoquery1.open;
Chart1.SeriesList[1].Active := False;
Chart1.SeriesList[0].Active := True;
Chart1.SeriesList[0].Clear;
Series1.Add(sumday2, '男 ', clRed);
Series1.Add(sumday3, '女 ', clGreen);
end
else if bsskintreeview1.Selected.Text ='女' then
//点中第二个根节点后
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 where 性别=''女''');
adoquery1.open;
Chart1.SeriesList[1].Active := False;
Chart1.SeriesList[0].Active := True;
Chart1.SeriesList[0].Clear;
Series1.Add(sumday2, '男 ', clRed);
Series1.Add(sumday3, '女 ', clGreen);
end
else if bsskintreeview1.Selected.Text ='婚姻状况' then
//点中第二个根节点后
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 ');
adoquery1.open;
Chart1.SeriesList[0].Active := False;
Chart1.SeriesList[1].Active := True;
Chart1.SeriesList[1].Clear;
Series2.Add(sumday4, '已婚 ', clRed);
Series2.Add(sumday5, '未婚 ', clGreen);
end
else if bsskintreeview1.Selected.Text='已婚' then
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 where 婚姻状况=''已婚''');
adoquery1.open;
Chart1.SeriesList[0].Active := False;
Chart1.SeriesList[1].Active := True;
Chart1.SeriesList[1].Clear;
Series2.Add(sumday4, '已婚 ', clRed);
Series2.Add(sumday5, '未婚 ', clGreen);
end
else if bsskintreeview1.Selected.Text='未婚' then
begin
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.SQL.Add('select * from 员工基本信息表 where 婚姻状况=''未婚''');
adoquery1.open;
Chart1.SeriesList[0].Active := False;
Chart1.SeriesList[1].Active := True;
Chart1.SeriesList[1].Clear;
Series2.Add(sumday4, '已婚 ', clRed);
Series2.Add(sumday5, '未婚 ', clGreen);
end;
end;
procedure TForm2.Button1Click(Sender: TObject);
var
Series : TChartSeries ;
begin
Chart1.SeriesList.Clear; // 先清掉。
Series := TChartSeries.Create(Chart1);
Series.Add(100, 'aaa', clRed);
Series.Add(200, 'AAA', clGreen);
Chart1.AddSeries(Series);
end;
procedure TForm9.bsSkinTreeView1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Series: TpieSeries;
begin
if bsskintreeview1.Selected = nil then exit; // 底下語句就用你自己的就行了。沒有發現在錯誤。