04. februar 2004 - 15:42Der er
7 kommentarer og 2 løsninger
Opret QRLabel dynamisk i en QuickReport
Hej alle,
Jeg har det problem at jeg får en Access violation fejl når jeg prøver at oprette en QRLabel i en DetailBand på en QuickReport. Min kode ser således ud:
procedure TFrmReport.DetailBand1BeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean); var newLabel: TQRLabel; begin newLabel := TQRLabel.Create(DetailBand1); TControl(newLabel).Parent := DetailBand1; newLabel.Caption := 'Hej med dig'; newLabel.Top := 8; newLabel.Left := 275; end;
Jeg har prøvet at sætte følgende linie ind lige før end;
stone: Jeg kan ikke bare sætte koden ind i FormOnCreate fordi de labels skal oprettes dynamisk hver gang en ny DetailBand bliver lavet, der skal nemlig et variabelt antal labels på hver "linie" i rapporten. Desuden bliver de labels fyldt med data fra en database (koden er ikke vist i mit eksempel for ikke at skabe forvirring) og indholdet skal jo være dynamisk rapporten igennem ;-)
pellelil: Det var også en mulighed jeg har overvejet men så skal jeg oprette 26 labels hvoraf kun nogle skal indeholde data alt efter mine data i databasen. Problemet opstår så bare når jeg skal bestemme hvilken label der skal indeholde hvilke data i forhold til den enkelte labels position på QR'en. Det ville være meget lettere at angive en Left property dynamisk så labels'ene kommer til at stå rigtigt.
Tak for forsøget til jer to, men jeg er desværre nok nødt til at lave dem dynamisk i netop DetailBand...
Hej futterama og alle andre der anvender eksperten
Alt for ofte ser man at et spørgsmål bliver stillet, forslag på løsninger bliver præcenteret, men til sidst siger spørgsmålstilleren at han har selv fundet ud af det, og lukker spørgsmålet.
Ville det ikke være på sin plads at man lige oplyste hvilken løsning man fant, så vi andre også kan få glæde af løsningen !! ???
helt enig med pigbear....og har man ikke fået løst problemet så kan man bare sige at de løsninger vi er kommet med ikke lige har været det man søgte efter, og så prøve på et senere tidspunkt et nyt spørgsmål -.
Jeg er sådan set enig, men da jeg lavede det projekt hvor jeg havde problemer, havde jeg ikke tid til at komme med en lang forklaring på hvordan problemet løses. Og da det er mere end 2 år siden, så kan jeg simpelthen ikke huske løsningen. Jeg kan ikke engang finde den frem fordi jeg ikke arbejder i den afdeling af virksomheden længere, så jeg har ikke adgang til filerne. Desværre.
he he så lige datoen...så det er forståeligt futterama
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.