close
QStrings Title = tr("Export file");
QString fileName=QFileDialog::getSaveFileName(this,sTitle
,sDefaultFilePath,tr("Excel Files (*.csv);;PDF Documents (*.pdf)"));
第一個參數填this即可
第二個參數是對話方塊名稱
第三個參數是預設儲存位置
第四個則填入可以選擇儲存之副檔名,多個則用兩個";"來分類
csv寫入資料比較容易
QFile csvFile(sFileName);
csvFile.write(sStr.toAscii()+",");
csvFile.write("\n");
csvFile.close();
csv檔案由逗號分隔資料欄的,所以後面有加個逗號。
將表格寫入pdf檔案就牽扯到html語法
QTextDocument*tdTextDoc=newQTextDocument();
QFonttFont;
設定文字大小
tFont.setPointSize(22);
tdTextDoc->setDefaultFont(tFont);
表格欄位我只做了一格,每隔<td></td>就可以換下一行
而每隔<tr></tr>就可換下一列。
QStringsText="<table border=1 width=256><thead>";
sText+="<tr>";
sText+="<td align=center>["+sStr.toAscii()+"]</td></tr></thead><tbody>";
tdTextDoc->setHtml(sText);
接下來用QPrinter設定pdf格式
QPrinter printer(QPrinter::HighResolution);
printer.setOutputFormat(QPrinter::PdfFormat);
printer.setOutputFileName(sFileName);
printer.setPageSize(QPrinter::B1);
printer.newPage();
tdTextDoc->print(&printer);
全站熱搜