Task task1 = {1, 10, 13, 24, 22, 10, 0, 0, 0}; Task task2 = {2, 15, 3, 15, 25, 20, 0, 0, 0}; Task task3 = {3, 8, 15, 5, 27, 30, 0, 0, 0}; Task task4 = {4, 14, 3, 2, 19, 40, 0, 0, 0}; Task task5 = {5, 3, 20, 12, 9, 50, 0, 0, 0}; Task task6 = {6, 4, 16, 5, 29, 60, 0, 0, 0}; Task task7 = {7, 16, 13, 4, 26, 70, 0, 0, 0}; Task task8 = {8, 13, 17, 24, 5, 80, 0, 0, 0}; Task task9 = {9, 15, 3, 15, 25, 90, 0, 0, 0};,在qt中,添加代碼通過道爾excel文件,獲得task内容
时间: 2023-09-13 17:10:50 浏览: 73
要在Qt中通过Excel文件获取Task内容,你需要使用Qt的QAxObject模块来创建一个Excel应用程序,然后打开Excel文件并读取其中的数据。以下是一个示例代码:
```cpp
QAxObject* excel = new QAxObject("Excel.Application");
QAxObject* workbooks = excel->querySubObject("Workbooks");
QAxObject* workbook = workbooks->querySubObject("Open(const QString&)", "excel_file_path");
QAxObject* worksheet = workbook->querySubObject("Worksheets(int)", 1);
for (int row = 1; row <= 9; row++) {
QString task_str = worksheet->querySubObject("Cells(int,int)", row, 1)->dynamicCall("Value2()").toString();
QStringList task_list = task_str.split(", ");
int task_id = task_list[0].toInt();
int task_params[6];
for (int i = 1; i <= 6; i++) {
task_params[i-1] = task_list[i].toInt();
}
// 创建 Task 对象并保存 task_params
}
workbook->dynamicCall("Close()");
excel->dynamicCall("Quit()");
```
在这个示例中,我们首先创建了一个Excel应用程序,然后打开指定的Excel文件。接下来,我们获取第一个工作表,并依次读取每一行的数据。读取到的数据以字符串形式返回,我们需要将其解析为Task对象的属性。
最后,我们关闭Excel文件并退出Excel应用程序。请注意,这里的示例仅演示了如何读取Excel文件中的数据,你需要根据自己的需要进行修改和完善。
阅读全文