⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainganttunit.pas

📁 Gantt source file example to use in delphi 7
💻 PAS
📖 第 1 页 / 共 2 页
字号:
   end;
end;

procedure TGanttForm.ProjectColorBoxChange(Sender: TObject);
begin
   GanttChart1.ProjectTitleColour := ProjectColorBox.Selected;
end;

procedure TGanttForm.ToolButton16Click(Sender: TObject);
begin
  if SelectedItem > -1 then
  begin
     ProjectItem := GanttChart1.GetProjectItem(SelectedProject,SelectedItem);
     ProjectItem.ClearItemLink;
     GanttChart1.Repaint;
  end;
end;

procedure TGanttForm.ToolButton9Click(Sender: TObject);
begin
   if SelectedProject > -1 then
   begin
      if MessageDlg('Are you sure you want to delete this Project!', mtWarning, [mbYes,mbNo], 0) = mrYes then
      begin
        GanttChart1.DeleteProject(SelectedProject);
        SelectedProject := -1;
      end;  
   end;
end;


procedure TGanttForm.ToolButton11Click(Sender: TObject);
begin
   if (SelectedItem > -1) and (SelectedProject > -1)  then
   begin
      if MessageDlg('Are you sure you want to delete this Item!', mtWarning, [mbYes,mbNo], 0) = mrYes then
      begin
        GanttChart1.DeleteProjectItem(SelectedProject,SelectedItem);
        SelectedItem := -1;
      end;
   end;
end;

procedure TGanttForm.ToolButton21Click(Sender: TObject);
begin
  if SelectedProject > -1 then
  begin
     Project := GanttChart1.GetProject(SelectedProject);
     if EditProjectForm.EditDetails(Project) = True then
     GanttChart1.Repaint;
  end;
end;



procedure TGanttForm.ToolButton12Click(Sender: TObject);
begin
  if SelectedItem > -1 then
  begin
     ProjectItem := GanttChart1.GetProjectItem(SelectedProject,SelectedItem);
     if ItemDetailsForm.EditDetails(ProjectItem) = True then
     GanttChart1.Repaint;
  end;
end;



procedure TGanttForm.ToolButton4Click(Sender: TObject);
begin
  GanttChart1.ClearProjects
end;

procedure TGanttForm.ToolButton26Click(Sender: TObject);
begin
     if GanttDetailsForm.EditDetails(GanttChart1) = True then
     GanttChart1.Repaint;
end;

procedure TGanttForm.ToolButton27Click(Sender: TObject);
begin
if savepicturedialog1.Execute  then
   GanttChart1.SaveChartToBitmap(savepicturedialog1.FileName);
end;

procedure TGanttForm.ToolButton28Click(Sender: TObject);
begin
   GanttChart1.ShowItemLength := Not GanttChart1.ShowItemLength;
   GanttChart1.Repaint;
end;

procedure TGanttForm.ToolButton30Click(Sender: TObject);
var
   Incr : Integer;
begin
   Incr := GanttChart1.DayWidth;
   Inc(Incr,4);
   if Incr > 100 then Incr := 100;
   GanttChart1.DayWidth := Incr;
   GanttChart1.Repaint;
end;


procedure TGanttForm.ToolButton31Click(Sender: TObject);
var
   Incr : Integer;
begin
   Incr := GanttChart1.DayWidth;
   Dec(Incr,4);
   if Incr <10 then Incr := 10;
   GanttChart1.DayWidth := Incr;
   GanttChart1.Repaint;
end;


procedure TGanttForm.ToolButton33Click(Sender: TObject);
begin
   GanttChart1.ShowGridLines := Not GanttChart1.ShowGridLines;
   GanttChart1.Repaint;
end;

procedure TGanttForm.ToolButton34Click(Sender: TObject);
begin
   GanttChart1.ShowHeaderWeeks := Not GanttChart1.ShowHeaderWeeks;
   GanttChart1.Repaint;
end;

procedure TGanttForm.ToolButton35Click(Sender: TObject);
begin
   GanttChart1.ShowHeaderDayNumbers := Not GanttChart1.ShowHeaderDayNumbers;
   GanttChart1.Repaint;
end;

procedure TGanttForm.GanttChart1DblClickItemEvent(ProjectID,
  ItemID: Integer);
begin
   if (SelectedItem > -1) and (SelectedProject > -1)  then
  begin
     ProjectItem := GanttChart1.GetProjectItem(ProjectID,ItemID);
     if ItemDetailsForm.EditDetails(ProjectItem) = True then
     GanttChart1.Repaint;
  end;
end;

procedure TGanttForm.ToolButton36Click(Sender: TObject);
var
   Incr : Integer;
begin
  Incr := GanttChart1.TopMostProject;
  inc(Incr);
  GanttChart1.TopMostProject := Incr;
end;

procedure TGanttForm.ToolButton37Click(Sender: TObject);
var
   Decr : Integer;
begin
  Decr := GanttChart1.TopMostProject;
  Dec(Decr);
  GanttChart1.TopMostProject := Decr;
end;

procedure TGanttForm.Button1Click(Sender: TObject);
var
   DataChart: IXMLRoot_ElementType;
   Project : IXMLGantt_ProjectType;
   Items : IXMLProject_ItemType;
   ConnectStr : String;
begin
  if OpenDBDialog.Execute then
  begin
 //  ConnectStr := 'Provider=Microsoft.Jet.OLEDB.4.0;';
 //  ConnectStr := ConnectStr + OpenDBDialog.FileName + ';';
 //  ConnectStr := ConnectStr + 'Persist Security Info=False';
 //  AdoConnection.ConnectionString := ConnectStr;

  AdoConnection.Connected := True;
  DataChart := NewRoot_Element;
  SettingsADOQuery.Active := True;
  // add gantt settings information
  DataChart.Gantt_Chart.Gantt_Chart_Details.Gantt_Title := SettingsADOQuery.FieldByName('Gantt_Title').AsString;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Start_Month := SettingsADOQuery.FieldByName('Start_Month').AsInteger;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Number_of_Months := SettingsADOQuery.FieldByName('Number_of_Months').AsInteger;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Project_Title_Colour := SettingsADOQuery.FieldByName('Project_Title_Colour').AsString;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Project_Height := SettingsADOQuery.FieldByName('Project_Height').AsInteger;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Day_Width := SettingsADOQuery.FieldByName('Day_Width').AsInteger;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Shadow_Colour := SettingsADOQuery.FieldByName('Shadow_Colour').AsString;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Gantt_Version := SettingsADOQuery.FieldByName('Gantt_Version').AsString;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Grid_Lines_Colour := '$00F2F2F2';
  DataChart.Gantt_Chart.Gantt_Chart_Details.Grid_Weekend_Colour := '$00EFEFEF';
  DataChart.Gantt_Chart.Gantt_Chart_Details.Project_Grid_Lines_Colour := '$00F2F2F2';
  DataChart.Gantt_Chart.Gantt_Chart_Details.Show_Item_Length := true;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Show_Grid_Lines := true;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Show_Day_Text := true;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Show_Header_Weeks := true;
  DataChart.Gantt_Chart.Gantt_Chart_Details.Show_Rounded_Titles := true;
  
  SettingsADOQuery.Active := False;
  ItemsADOQuery.Active := True;
  Project := DataChart.Gantt_Chart.Gantt_Projects.Add;
  Project.Gantt_Project_Name := ItemsADOQuery.fieldbyname('Gantt_Project_Name').AsString;
  while not ItemsADOQuery.Eof do
  begin
  if ItemsADOQuery.fieldbyname('Gantt_Project_Name').AsString <> Project.Gantt_Project_Name then
  begin
     Project := DataChart.Gantt_Chart.Gantt_Projects.Add;
     Project.Gantt_Project_Name := ItemsADOQuery.fieldbyname('Gantt_Project_Name').AsString;
   //  Project.Gantt_Project_Resource1 := ItemsADOQuery.fieldbyname('Gantt_Project_Resource1').AsString;
   //  Project.Gantt_Project_Resource2 := ItemsADOQuery.fieldbyname('Gantt_Project_Resource2').AsString;
  end;
     Items := Project.Gantt_Project_Items.Add;
     Items.Item_Name := ItemsADOQuery.fieldbyname('Item_Name').AsString;
     Items.Item_Type := ItemsADOQuery.fieldbyname('Item_Type').AsString;
     Items.Item_Status := ItemsADOQuery.fieldbyname('Item_Status').AsString;
     Items.Item_Percent_Completed := ItemsADOQuery.fieldbyname('Item_Percent_Completed').AsInteger;
     Items.Item_Colour := ItemsADOQuery.fieldbyname('Item_Colour').AsString;
     Items.Item_Start_Date := ItemsADOQuery.fieldbyname('Item_Start_Date').AsString;
     Items.Item_End_Date := ItemsADOQuery.fieldbyname('Item_End_Date').AsString;
     Items.Item_Days := ItemsADOQuery.fieldbyname('Item_Days').AsInteger;
     Items.Item_Brush.Item_Brush_Colour := ItemsADOQuery.fieldbyname('Item_Brush_Colour').AsString;
     Items.Item_Brush.Item_Brush_Style := ItemsADOQuery.fieldbyname('Item_Brush_Style').AsString;
     Items.Item_Pen.Item_Pen_Colour := ItemsADOQuery.fieldbyname('Item_Pen_Colour').AsString;
     Items.Item_Pen.Item_Pen_Size := ItemsADOQuery.fieldbyname('Item_Pen_Size').AsInteger;
     Items.Item_Link.Project_ID := 0;
     Items.Item_Link.Item_ID := 0;
     Items.Item_Link.Link_Type := 'lsFinishStart';
     Items.Item_TextData := '';
     ItemsADOQuery.Next;
  end;

  ItemsADOQuery.Active := False;
  AdoConnection.Connected := False;
  GanttChart1.DataBindChart(DataChart);
end;  
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -