12. marts 2000 - 20:49Der er
6 kommentarer og 1 løsning
Grafik i Borland Builder
Jeg har lige fået Borland Builder v.1.0, og har leget lidt med grafikken. Dvs jeg har brugt canvas og image, hvor sidste nænvte kan styres med top og left.
Hvordan laver jeg mere avanceret grafik. Det vil sige dobbelt buffering, eller styring af rasterstrålen, og gerne noget der er hurtigt...
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
kontrol af rasterstrålen bruger man nok ikke, men det var fint på commodore 64, da grafikken så ikke hakkede. Men dobbeltbuffering må da være mulig -> jeg ved det er. Det er vigtigt det virker under version 1.0
Tænker du på muligheden for at opbygge grafik i eet (skjult) lag, mens et andet lag vises ??? Den hardware-mæssige det af dette kan du ikke styre - det tror jeg også vil være uklogt, når du bruger C++ Builder.
MEN ... du kan jo meget enkelt simulere tilsvarende funktionalitet ved simpelthen at have to TImage på din form - en som er visible og en som ikke er det. (Husk at køre med transparent - så kan du se hvis de begge er aktive.) Dit program skal så blotr have en bool for hvilken af de to der vises. I forhold til tegning osv. vil de så være smartest at du laver en TCanvas *VisibleCanvas og en TCanvas *HiddenCanvas som du så sætter til at pege på det synilige henholdsvis skjulte canvas. på den måde kan alle dine underrutiner der skal tegne i baggrund, bare tegne på HiddenCanvas - uanset om det så er den ene TImage eller den anden som er synlig p.t.
Soepro>> Ja du svare jo på mange af mins spm. Det er jo lækkert nok. Jeg har nu lavet en dobbelbuffer rutine, med et memory bmp billede.
"Graphics::TBitmap* bm = new Graphics::TBitmap;"
Jeg tænkt det nok var hurtiger end at bruge "Timage" Men jeg syntes hastighedn stinker. Har bla. lavet en stjernehimmel med 300 stjerne (ingen 3d), som æder 60 % af min CPU tid på min 350 mhz maskine.
Jeg vil tro at du skal udenom C++ Builders egene forms, og til at kalde Windows API'erne direkte. Næsten enhver VCL-komponent er en sammenstykning af allerede eksisterende Windows API-kald.
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.