Đọc Biểu đồ Gantt của Dự án bằng Java

MS Project là một phần mềm quản lý dự án phổ biến, được sử dụng rộng rãi để tổ chức, quản lý và theo dõi các hoạt động của dự án một cách hiệu quả. Nó cho phép tạo nhiệm vụ, thêm tài nguyên, phân bổ nhiệm vụ cho tài nguyên, theo dõi tiến độ và quản lý các hoạt động liên quan đến ngân sách. Dạng xem biểu đồ Gantt là dạng xem mặc định của dự án. Nó liệt kê các nhiệm vụ của dự án và cho thấy mối quan hệ của chúng với nhau. Nó cũng hiển thị lịch trình của dự án bằng cách sử dụng các thanh Gantt. Trong bài này, chúng ta sẽ học cách đọc biểu đồ Gantt của MS project bằng Java.

Các chủ đề sau sẽ được đề cập trong bài viết này:

Biểu đồ Gantt trong Microsoft Project là gì

Biểu đồ Gantt là một loại biểu đồ thanh hiển thị lịch trình của dự án. Nó là một biểu diễn đồ họa của các nhiệm vụ dự án chống lại thời gian và cung cấp một cái nhìn toàn cảnh về toàn bộ dự án. Dạng xem biểu đồ Gantt trong Microsoft Project hiển thị như sau:

  • Tiến độ dự án
  • Ước tính thời gian
  • Tài nguyên dự án và các thành viên trong nhóm
  • Ưu tiên nhiệm vụ
  • Sự phụ thuộc vào nhiệm vụ
Gantt Chart View of a Project in Microsoft Project.

API Java để đọc biểu đồ Gantt của dự án

Để đọc dạng xem biểu đồ Gantt của một Dự án từ tệp MPP, chúng tôi sẽ sử dụng API Aspose.Tasks for Java. Nó cho phép tạo, chỉnh sửa hoặc thao tác các tệp Microsoft Project theo lập trình trong các ứng dụng Java. Lớp Dự án của API đại diện cho một dự án. Nó là lớp chính trình bày các phương thức khác nhau để thực hiện các chức năng khác nhau. Nó cũng cho phép đọc một trong các định dạng quản lý dự án được hỗ trợ như MPP, MPT, MPXXML. Lớp GanttChartView của API đại diện cho chế độ xem biểu đồ Gantt. Nó cho thấy các thuộc tính và phương pháp khác nhau để làm việc với biểu đồ Gantt theo chương trình.

Vui lòng tải xuống JAR của API hoặc thêm cấu hình pom.xml sau vào ứng dụng Java dựa trên Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-tasks</artifactId>
    <version>22.5</version>
    <classifier>jdk18</classifier>
</dependency>

Đọc kiểu xem biểu đồ Gantt và truy xuất kiểu thanh

Lớp GanttBarStyle của API đại diện cho kiểu thanh được MS Project sử dụng trong dạng xem biểu đồ Gantt. Chúng tôi có thể đọc chế độ xem biểu đồ Gantt và truy xuất các kiểu thanh bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp dự án bằng lớp Dự án.
  2. Tiếp theo, lấy chế độ xem mặc định từ ViewCollection theo chỉ mục của nó.
  3. Sau đó, tạo một phiên bản của lớp GanttChartView và chế độ xem typecast.
  4. Theo tùy chọn, đọc các thuộc tính cơ bản và hiển thị dữ liệu.
  5. Sau đó, lấy danh sách các kiểu thanh của dạng xem biểu đồ Gantt bằng cách sử dụng getBarStyles().
  6. Cuối cùng, lặp qua các kiểu thanh dưới dạng đối tượng lớp GanttBarStyle và hiển thị các giá trị.

Ví dụ mã sau đây cho thấy cách đọc kiểu thanh của dạng xem biểu đồ Gantt trong Java.

public static void main(String[] args) throws Exception
{
    // Đường dẫn đến thư mục tài liệu.
    String dataDir = "C:\\Files\\Tasks\\";

    // Tải dự án
    Project project = new Project(dataDir + "Project.mpp");

    // Nhận chế độ xem mặc định dưới dạng GanttChartView
    View view = project.getViews().toList().get(0);
    GanttChartView gcView = (GanttChartView) view;

    // Hiển thị thông tin cơ bản
    System.out.println("Bar Rounding: " + gcView.getBarRounding());
    System.out.println("Show Bar Splits: " + gcView.getShowBarSplits());
    System.out.println("Show Drawings: " + gcView.getShowDrawings());
    System.out.println("RollUp Gantt Bars: " + gcView.getRollUpGanttBars());
    System.out.println("Hide Rollup Bars When Summary Expanded: " + gcView.getHideRollupBarsWhenSummaryExpanded());
    System.out.println("Bar Size: " + gcView.getBarSize());
    System.out.println("Bar Styles count: " + gcView.getBarStyles().size());
    System.out.println("-----------------------------------------------");

    // Hiển thị các kiểu thanh
   for (GanttBarStyle barStyle : gcView.getBarStyles())
    {	
      System.out.println("Row: " +  barStyle.getRow());
        System.out.println("Name: " +  barStyle.getName());
        System.out.println("ShowFor: " +  barStyle.getShowForTaskUid());
        System.out.println("From:" +  getbarStylesFromToName(barStyle.getFrom()));
        System.out.println("To:" +   getbarStylesFromToName(barStyle.getTo()));
        System.out.println("Middle Shape:" +   getbarStylesMiddleShapeName(barStyle.getMiddleShape()));
        System.out.println("Middle Shape Color:" + barStyle.getMiddleShapeColor());
        System.out.println("Start Shape:" +   getbarStylesShapeName(barStyle.getStartShape()));
        System.out.println("End Shape:" +   getbarStylesShapeName(barStyle.getEndShape()));
        System.out.println("End Shape Color:" + barStyle.getEndShapeColor());
        System.out.println("-----------------------------------------------");
    }
}

// Hàm này trả về tên trường
private static String getbarStylesFromToName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = Field.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// Hàm này trả về tên hình dạng giữa
private static String getbarStylesMiddleShapeName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = GanttBarMiddleShape.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// Hàm này trả về tên bắt đầu hoặc kết thúc hình dạng
private static String getbarStylesShapeName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = GanttBarEndShape.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
Bar Rounding: true
Show Bar Splits: true
Show Drawings: true
RollUp Gantt Bars: false
Hide Rollup Bars When Summary Expanded: false
Bar Size: 3
Bar Styles count: 40
-----------------------------------------------
Row: 1
Name: Task
ShowFor: null
From:TaskStart
To:TaskFinish
Middle Shape:RectangleBar
Middle Shape Color:java.awt.Color[r=0,g=0,b=255]
Start Shape:NoBarEndShape
End Shape:NoBarEndShape
End Shape Color:java.awt.Color[r=0,g=0,b=0]
-----------------------------------------------
...

Đọc các dòng lưới của Chế độ xem biểu đồ Gantt trong Java

Lớp Gridlines của API đại diện cho các đường lưới xuất hiện trong chế độ xem biểu đồ Gantt. Chúng ta có thể đọc màu, khoảng, mẫu và kiểu của đường lưới bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp dự án bằng lớp Dự án.
  2. Tiếp theo, lấy chế độ xem mặc định từ ViewCollection theo chỉ mục của nó.
  3. Sau đó, tạo một phiên bản của lớp GanttChartView và chế độ xem typecast.
  4. Sau đó, lấy danh sách các đường Lưới của dạng xem biểu đồ Gantt bằng cách sử dụng getGridlines().
  5. Cuối cùng, lặp qua các đường lưới dưới dạng đối tượng lớp Gridlines và hiển thị các giá trị.

Ví dụ mã sau đây cho thấy cách đọc các đường lưới của dạng xem biểu đồ Gantt trong Java.

public static void main(String[] args) throws Exception
{
    // Đường dẫn đến thư mục tài liệu.
    String dataDir = "C:\\Files\\Tasks\\";

    // Tải dự án
    Project project = new Project(dataDir + "Project.mpp");

    // Nhận chế độ xem mặc định dưới dạng GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // Hiển thị thông tin Gridlines
    System.out.println("Gridlines Count: " + gcView.getGridlines().size());
    Gridlines gridlines = gcView.getGridlines().get(0);

    System.out.println("Gridlines Type: " + gridlines.getType());
    System.out.println("Gridlines Interval: " + gridlines.getInterval());
    System.out.println("Gridlines NormalColor: " + gridlines.getNormalColor());
    System.out.println("Gridlines NormalPattern: " + getLinePatternName(gridlines.getNormalPattern()));
    System.out.println("Gridlines IntervalPattern: " +gridlines.getIntervalPattern());
    System.out.println("Gridlines IntervalColor: " + gridlines.getIntervalColor());
}

// Hàm này trả về tên mẫu đường kẻ
private static String getLinePatternName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = LinePattern.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
Gridlines Count: 14
Gridlines Type: 3
Gridlines Interval: 0
Gridlines NormalColor: java.awt.Color[r=192,g=192,b=192]
Gridlines NormalPattern: Solid
Gridlines IntervalPattern: 0
Gridlines IntervalColor: java.awt.Color[r=192,g=192,b=192]

Trích xuất kiểu văn bản của Chế độ xem biểu đồ Gantt trong Java

Lớp TextStyle của API thể hiện kiểu trực quan của văn bản cho một mục trong chế độ xem biểu đồ Gantt. Chúng ta có thể đọc màu, màu nền, phông chữ và kiểu phông chữ bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp dự án bằng lớp Dự án.
  2. Tiếp theo, lấy chế độ xem mặc định từ ViewCollection theo chỉ mục của nó.
  3. Sau đó, tạo một phiên bản của lớp GanttChartView và chế độ xem typecast.
  4. Sau đó, lấy danh sách các kiểu văn bản của dạng xem biểu đồ Gantt bằng cách sử dụng getTextStyles().
  5. Cuối cùng, khởi tạo đối tượng lớp TextStyle cho kiểu văn bản đầu tiên và hiển thị các giá trị.

Ví dụ mã sau đây cho thấy cách đọc các kiểu văn bản của dạng xem biểu đồ Gantt trong Java.

public static void main(String[] args) throws Exception
{
    // Đường dẫn đến thư mục tài liệu.
    String dataDir = "C:\\Files\\Tasks\\";

    // Tải dự án
    Project project = new Project(dataDir + "Project.mpp");

    // Nhận chế độ xem mặc định dưới dạng GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // Hiển thị thông tin Kiểu văn bản
    System.out.println("Text Styles Count: " + gcView.getTextStyles().size());
    TextStyle textStyle = gcView.getTextStyles().get(0);

    System.out.println("Background Color: " + textStyle.getBackgroundColor());
    System.out.println("Text Color: " + textStyle.getColor());
    System.out.println("Font Family: " + textStyle.getFont().getFontFamily());
    System.out.println("Font Size: " + textStyle.getFont().getSize());
    System.out.println("Font Style: " + getFontStyleName(textStyle.getFont().getStyle()));
}

// Hàm này trả về tên Kiểu phông chữ
private static String getFontStyleName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = FontStyles.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
Text Styles Count: 19
Background Color: java.awt.Color[r=0,g=0,b=0]
Text Color: java.awt.Color[r=0,g=0,b=255]
Font Family: Arial
Font Size: 8.0
Font Style: Regular

Truy xuất các dòng tiến trình của Chế độ xem biểu đồ Gantt trong Java

Các đường tiến độ xuất hiện trên chế độ xem Biểu đồ Gantt cho biết các nhiệm vụ đang bị chậm lại hay đúng tiến độ. Chúng ta có thể đọc các thuộc tính khác nhau của các đường tiến trình bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tải tệp dự án bằng lớp Dự án.
  2. Tiếp theo, lấy chế độ xem mặc định từ ViewCollection theo chỉ mục của nó.
  3. Sau đó, tạo một phiên bản của lớp GanttChartView và chế độ xem typecast.
  4. Sau đó, lấy danh sách các đường tiến trình của dạng xem biểu đồ Gantt bằng cách sử dụng getProgressLines().
  5. Cuối cùng, hiển thị các giá trị thuộc tính dòng tiến trình.

Ví dụ mã sau đây cho thấy cách đọc các đường tiến trình của dạng xem biểu đồ Gantt trong Java.

public static void main(String[] args) throws Exception
{
    // Đường dẫn đến thư mục tài liệu.
    String dataDir = "C:\\Files\\Tasks\\";

    // Tải dự án
    Project project = new Project(dataDir + "Project.mpp");

    // Nhận chế độ xem mặc định dưới dạng GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // Hiển thị thông tin dòng Tiến trình
    System.out.println("ProgressLines.BeginAtDate: " + gcView.getProgressLines().getBeginAtDate().toString());
    System.out.println("ProgressLines.isBaselinePlan: " + gcView.getProgressLines().isBaselinePlan());
    System.out.println( "ProgressLines.DisplaySelected: " + gcView.getProgressLines().getDisplaySelected());
    System.out.println("ProgressLines.SelectedDates.Count: " + gcView.getProgressLines().getSelectedDates().size());

    System.out.println("ProgressLines.DisplayAtRecurringIntervals: " + gcView.getProgressLines().getDisplayAtRecurringIntervals());
    System.out.println("ProgressLines.RecurringInterval.Interval: " +  gcView.getProgressLines().getRecurringInterval().getInterval()  );
    System.out.println("ProgressLines.RecurringInterval.WeeklyDays.Count" +  gcView.getProgressLines().getRecurringInterval().getWeeklyDays().size());
    System.out.println("RecurringInterval.DayType.Friday: "  +  (int) gcView.getProgressLines().getRecurringInterval().getWeeklyDays().get(1));
    System.out.println("RecurringInterval.DayType.Saturday: "  + (int)gcView.getProgressLines().getRecurringInterval().getWeeklyDays().get(2));
    System.out.println("RecurringInterval.DayType.Sunday: " +  (int)gcView.getProgressLines().getRecurringInterval().getWeeklyDays().get(0));

    System.out.println("ProgressLines.ShowDate" + gcView.getProgressLines().getShowDate());

    System.out.println("ProgressLines.ProgressPointShape: " +  gcView.getProgressLines().getProgressPointShape());
    System.out.println("ProgressLines.ProgressPointColor: " +  gcView.getProgressLines().getProgressPointColor());
    System.out.println("ProgressLines.LineColor: " + gcView.getProgressLines().getLineColor());
    System.out.println("ProgressLines.LinePattern" +  gcView.getProgressLines().getLinePattern());

    System.out.println("ProgressLines.OtherProgressPointShape: " + gcView.getProgressLines().getOtherProgressPointShape());
    System.out.println("ProgressLines.OtherProgressPointColor: " + gcView.getProgressLines().getOtherProgressPointColor().toString());
    System.out.println("ProgressLines.OtherLineColor: " + gcView.getProgressLines().getOtherLineColor());
}

Đọc Bottom Timescale Tier trong Java

Thang thời gian hiển thị đơn vị thời gian, ngày, tháng, năm dương lịch hoặc năm tài chính. Có ba tầng thời gian trong chế độ xem dự án để hiển thị các giá trị của tỷ lệ thời gian cho mỗi tầng như đếm, đơn vị, nhãn, căn chỉnh, v.v. Chúng ta có thể đọc tầng dưới cùng của thang thời gian bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tải tệp dự án bằng lớp Dự án.
  2. Tiếp theo, lấy chế độ xem mặc định từ ViewCollection theo chỉ mục của nó.
  3. Sau đó, tạo một phiên bản của lớp GanttChartView và chế độ xem typecast.
  4. Sau đó, lấy cài đặt của tầng lịch thời gian dưới cùng của chế độ xem bằng cách sử dụng getBottomTimescaleTier().
  5. Cuối cùng, hiển thị các giá trị của bậc thang thời gian dưới cùng.

Ví dụ mã sau đây cho thấy cách đọc tầng thời gian dưới cùng của chế độ xem biểu đồ Gantt trong Java.

public static void main(String[] args) throws Exception
{
    // Đường dẫn đến thư mục tài liệu.
    String dataDir = "C:\\Files\\Tasks\\";

    // Tải dự án
    Project project = new Project(dataDir + "Project.mpp");

    // Nhận chế độ xem mặc định dưới dạng GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // Hiển thị thông tin về Bậc thang thời gian dưới cùng
    System.out.println("BottomTimescaleTier Count: " + gcView.getBottomTimescaleTier().getCount());
    System.out.println("BottomTimescaleTier Unit: " + getTimescaleUnitName(gcView.getBottomTimescaleTier().getUnit()));
    System.out.println("BottomTimescaleTier UsesFiscalYear: " + gcView.getBottomTimescaleTier().getUsesFiscalYear());
    System.out.println("BottomTimescaleTier Alignment: " + getAlignmentName(gcView.getBottomTimescaleTier().getAlignment()));
    System.out.println("BottomTimescaleTier ShowTicks: " + gcView.getBottomTimescaleTier().getShowTicks());
    System.out.println("BottomTimescaleTier Label: " + getDateLabelName(gcView.getBottomTimescaleTier().getLabel()));
}

// Hàm này trả về tên Bảng dữ liệu theo tỷ lệ thời gian
private static String getDateLabelName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = DateLabel.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// Hàm này trả về tiêu đề Căn chỉnh
private static String getAlignmentName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = StringAlignment.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// Hàm này trả về tên Đơn vị Thang thời gian
private static String getTimescaleUnitName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = TimescaleUnit.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
BottomTimescaleTier Count: 2
BottomTimescaleTier Unit: Days
BottomTimescaleTier UsesFiscalYear: true
BottomTimescaleTier Alignment: Center
BottomTimescaleTier ShowTicks: true
BottomTimescaleTier Label: DayOfMonthDd

Đọc Bậc thang thời gian giữa bằng Java

Tương tự, chúng ta có thể đọc tầng thời gian giữa bằng cách làm theo các bước đã đề cập trước đó. Tuy nhiên, chúng tôi sẽ nhận được cài đặt của tầng thời gian giữa của chế độ xem bằng cách sử dụng getMiddleTimescaleTier() trong bước 4.

Ví dụ mã sau đây cho thấy cách đọc bậc thời gian giữa của chế độ xem biểu đồ Gantt trong Java.

public static void main(String[] args) throws Exception
{
    // Đường dẫn đến thư mục tài liệu.
    String dataDir = "C:\\Files\\Tasks\\";

    // Tải dự án
    Project project = new Project(dataDir + "Project.mpp");

    // Nhận chế độ xem mặc định dưới dạng GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // Hiển thị thông tin về Cấp thời gian giữa
    System.out.println("MiddleTimescaleTier Count: " + gcView.getMiddleTimescaleTier().getCount());
    System.out.println("TimescaleUnit Weeks: " +  getTimescaleUnitName(gcView.getMiddleTimescaleTier().getUnit()));
    System.out.println("MiddleTimescaleTier Alignment: " + getAlignmentName(gcView.getMiddleTimescaleTier().getAlignment()));
    System.out.println("MiddleTimescaleTier ShowTicks: " + gcView.getMiddleTimescaleTier().getShowTicks());
    System.out.println("MiddleTimescaleTier Label: " +  getDateLabelName(gcView.getMiddleTimescaleTier().getLabel()));
}
MiddleTimescaleTier.Count: 1
TimescaleUnit.Weeks: Months
MiddleTimescaleTier.Alignment: Center
MiddleTimescaleTier.ShowTicks: true
MiddleTimescaleTier.Label: MonthMmmmYyyy

Truy xuất Bậc thang thời gian hàng đầu trong Java

Chúng tôi cũng có thể đọc cấp thời gian hàng đầu bằng cách làm theo các bước đã đề cập trước đó. Tuy nhiên, chúng tôi sẽ nhận được các cài đặt của bậc thang thời gian hàng đầu của chế độ xem bằng cách sử dụng getTopTimescaleTier() trong bước 4.

Ví dụ mã sau đây cho thấy cách đọc bậc trên cùng của lịch biểu đồ Gantt trong Java.

public static void main(String[] args) throws Exception
{
    // Đường dẫn đến thư mục tài liệu.
    String dataDir = "C:\\Files\\Tasks\\";

    // Tải dự án
    Project project = new Project(dataDir + "Project.mpp");

    // Nhận chế độ xem mặc định dưới dạng GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // Hiển thị thông tin về Bậc thang thời gian hàng đầu
    System.out.println("TopTimescaleTier Unit: " + getTimescaleUnitName(gcView.getTopTimescaleTier().getUnit()));
    System.out.println("TopTimescaleTier UsesFiscalYear: " + gcView.getTopTimescaleTier().getUsesFiscalYear() );
    System.out.println("TopTimescaleTier Alignment: " +  getAlignmentName(gcView.getTopTimescaleTier().getAlignment()));
    System.out.println("TopTimescaleTier ShowTicks: " + gcView.getTopTimescaleTier().getShowTicks());
    System.out.println("TopTimescaleTier Label" + getDateLabelName(gcView.getTopTimescaleTier().getLabel()));
}
TopTimescaleTier Unit: Quarters
TopTimescaleTier UsesFiscalYear: true
TopTimescaleTier Alignment: Center
TopTimescaleTier ShowTicks: true
TopTimescaleTier Label: QuarterQtrQYyyy

Nhận giấy phép miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để dùng thử thư viện mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, chúng ta đã học cách

  • đọc chế độ xem biểu đồ Gantt theo lập trình trong Java;
  • trích xuất các kiểu thanh và kiểu văn bản của chế độ xem biểu đồ Gantt;
  • truy xuất các đường lưới và đường tiến trình của chế độ xem biểu đồ Gantt;
  • đọc đơn vị thời gian của chế độ xem biểu đồ Gantt bằng Java.

Ngoài ra, bạn có thể tìm hiểu thêm về Aspose.Tasks for Java API bằng cách sử dụng tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm