12. november 2004 - 21:48Der er
13 kommentarer og 1 løsning
difinere ramme i pixel, til at tegne på
dav
jeg sidder og programmere lidt i BOrland Builder 6.0, og det ser jo meget sjovt ud.. som sådan... men jeg skal bruge noget som jeg enten ikke ved der er med som kompunent, eller kan finde ud af...
Eks..
hvis man tager et label og får det til at fylde 800*600 pixel i en firkant. Og man har funktioner til at difiniere hvilken pixel der skal være tænkt. Så har man en ramme, hvorpå man kan tegne.
Hvordan difinere man sådan en ramme i Borland Builder 6.0, hvis man sidder og bygger sit program ud i et vindue... ??
Det vil altid være langsomt at tegne en pixel af gangen. Man kan bruge Canvas->FillRect(Rect), Canvas->Ellipse(Rect), osv, det går nok lidt hurtigere. Eller man kan tegne med bitmaps (lavet fra filer).
Du kan lave en ramme ved at aflede en class fra TPanel og tegne på den, laver lige et eksempel...
hvordan så med en browser til internettet.. hvis man lavet et stort table.. det bliver da tegne hurtigt.. og tables er tunge HTML, når man snakker sådan noget....
hvad gør en browsers vindue for at tegne så hurtigt ??
En browser (og alt andet) tegner med streger (LineTo) og med boxe (FillRect), og text (DrawText). Grafikken bliver enten tegnet som bitmaps (BitBlt i almindelig Win32API), eller vha. et grafik bibliotek. jpg/gif/png/whatever bliver sansynligvis konverteret til bitmaps inden de bliver tegnet.
Man kan tegne et helt skærm billede i memory (på en memory dc) og så putte det på skærmen på én gang.
Kender du ikke en metode til sådan noget her i ren tankegang: void save_canva(canvas et eller andet) { for(int i = 0; i < 256; i++) for(int j = 0; j < 256; j++) MY_CanvasContainer[0] = TColor(RGB(i, j, 0)); }
Jeg ved godt hvordan man gør med ren Win32Api programmering, men jeg har ingen idé om hvordan man gør med BCB's (efter min ringe mening) krøllede måde at lave ting på.
ok.. det vil jeg så gøre... jeg prøver at overholde ekspertens regler...
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.