c++builder中用ListView做报表QuickRep的数据源,怎么做
如题,我现在就想把ListView中的数据,作为一定的格式,打印出来!
请大神们帮忙看一下。或给个例子也行。官方的那些例子都是绑定的Cbuilder自带的数据库文件,跟我要实现的不太一样,我很
难移植过来,
急啊。
[解决办法]
可以的
void __fastcall TForm1::QuickRep1NeedData(TObject *Sender, bool &MoreData)
{
//这里加入打印的字符串
//如:QRLabel1->Caption="hehehe";
MoreData=true; //如果结束了,这里就改false
}
[解决办法]
我来了!!!
根据ListView中的内容,创建一个内存表,并连接到数据源。
#include <dbclient.hpp>int __fastcall CreateMemTableWithListView(TListView *lv, TDataSource *ds){ TClientDataSet *cds = new TClientDataSet(Application); cds->FieldDefs->Add("f1", ftString, 10, False); cds->FieldDefs->Add("f2", ftString, 10, False); cds->FieldDefs->Add("f3", ftString, 30, False); cds->CreateDataSet(); for (int i = 0; i < lv->Items->Count; i++) { cds->Append(); cds->Fields->Fields[0]->AsString = lv->Items->Item[i]->Caption; for (int j = 0; j < lv->Items->Item[i]->SubItems->Count; j++) { cds->Fields->Fields[j + 1]->AsString = lv->Items->Item[i]->SubItems->Strings[j]; } } ds->DataSet = cds; return cds->RecordCount;}