Brug Kugars klasser til rapporter

Kugar-biblioteket inkluderer to grafiske kontroller som kan bruges.

Klassen KReportViewer er konstrueret for KDE-udviklere. Den understøtter KDE's udskriftssystem og oversættelse under UNIX® via i18n()-kald.

Klassen MReportViewer er konstrueret for Qt™-udviklere og sørger for rigtig platformsuafhængighed. Den kan ikke kun bruges på UNIX®-platforme, men også på Windows® og Mac® OS.

For at bygge et program som bruger Kugar-biblioteket, skal det linkes med det delte bibliotek libkugar.so, som kommer med Kugar-distributioner på alle UNIX®-platforme.

Deklarationsfiler er kugarqt.h og kugar.h for de respektive Qt™- og KDE-programmer.

For et detaljeret eksempel på hvordan Kugar-klasser kan bruges, kig i mappen /shell i Kugars kildekode.

MReportViewer (og også KReportViewer) indeholder flere offentlige metoder som kan bruges.

void renderReport();

Viser rapporten på skærmen.

void printReport();

Kalder udskriftsdialogen for at udskrive rapporten.

void clearReport();

Rydder rapporten på skærmen og frigør rapportdata. Kald dette inden en ny rapport åbnes.
bool setReportData(datafilnavn); 
const QString & datafilnavn;
Henter rapportdata fra filen datafilnavn.
bool setReportData(data io-enhed); 
const QIODevice & data io-enhed;
Henter rapportdata fra filen data io-enhed. I/O-enheden kan være hvilken som helst klasse afledt fra klassen QIODevice. For eksempel for direkte at hente poster fra databasen, opret en afledt klasse fra QIODevice og omdefinér alle nødvendige funktioner. 
bool setReportTemplate(skabelonfilnavn); 
const QString & skabelonfilnavn;
Henter rapportskabelon fra filen skabelonfilnavn.
bool setReportTemplate(skabelon_io_enhed); 
const QIODevice & skabelon_io_enhed;
Sætter rapportskabelon fra filen skabelon_io_enhed. I/O-enheden kan være en hvilken som helst klasse afledt fra klassen QIODevice. For eksempel for at hente en rapportskabelon direkte fra netværket eller en database, opret en afledt klasse fra QIODevice og omdefinér alle nødvendige funktioner.