AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi BitBlt und TImage auf verschiedenen Systemen unterschiedlich
Thema durchsuchen
Ansicht
Themen-Optionen

BitBlt und TImage auf verschiedenen Systemen unterschiedlich

Ein Thema von edosoft · begonnen am 19. Nov 2006 · letzter Beitrag vom 19. Nov 2006
Antwort Antwort
Benutzerbild von edosoft
edosoft

Registriert seit: 27. Okt 2003
Ort: Wehingen
258 Beiträge
 
Turbo Delphi für Win32
 
#1

BitBlt und TImage auf verschiedenen Systemen unterschiedlich

  Alt 19. Nov 2006, 11:57
Hallo,

Ich hab einen P4 mit HT und 3,4Ghz im Laptop mit WinXPSP2 drauf.
Jetzt hab ich mir ein Programm gebastelt mit CAD-Oberfläche. Jetzt soll so ein Objekt (kreis oder Strich oder so) ja angezeigt werden wenn ich mit der Maus drüberfahre. also hab ich bei meinem TImage was als zeichenfläche fungiert beim onmousemove event eine routine die zuerst ein bckground-tbitmap in ein zweites tbitmap kopiert, per bitblt, und da wird dann das objekt reingezeichnet. wieder mit bitblt wird das 2. tbitmap auf mein TImage kopiert.

wenn ich jetzt am Laptop mit der Maus so drüberfahre geht die Prozessorlast auf 40-50% hoch. an nem anderen rechner mit nem athlon xp 2000+ oder sowas wieder mit windows xp drauf verursacht das ganze aber nur 8-10% cpu last. und selbst an nem driten rechner mit nem P2 mit 500mhz oder so und win98 läuft das programm noch flüssig. warum?

Delphi-Quellcode:
  BitBlt(tB.Canvas.Handle, 0, 0, cBackBmp.Width, cBackBmp.Height, cBackBmp.Canvas.Handle, 0, 0, SRCCOPY);
  [..]
  BitBlt(Image1.Canvas.Handle, 0, 0, Image1.Width, Image1.Height, tB.Canvas.Handle, 0, 0, SRCCOPY);
  Image1.Repaint;
mfg,
dominik weber
Dominik Weber
www.edo-soft.com
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: BitBlt und TImage auf verschiedenen Systemen unterschied

  Alt 19. Nov 2006, 12:16
Ein TImage ist vom Aufbhau her einfach nicht dafür geeignet zusätzliche Zeischenoperationen aus zu führen. Ein TImage dient eigentlich nur dazu ein Bild anzuzeigen was sich möglichst nicht verändert. Ansonsten ist es auf Grund der schlechten Performance dafür nicht geeignet.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von edosoft
edosoft

Registriert seit: 27. Okt 2003
Ort: Wehingen
258 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: BitBlt und TImage auf verschiedenen Systemen unterschied

  Alt 19. Nov 2006, 12:17
was würdest du mir anstelle eines timage empfehlen?
Dominik Weber
www.edo-soft.com
  Mit Zitat antworten Zitat
Gandalfus

Registriert seit: 19. Apr 2003
407 Beiträge
 
Delphi 2006 Professional
 
#4

Re: BitBlt und TImage auf verschiedenen Systemen unterschied

  Alt 19. Nov 2006, 14:53
TPaintbox
Besucht doch mal meine Homepage
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: BitBlt und TImage auf verschiedenen Systemen unterschied

  Alt 19. Nov 2006, 14:59
ich würd gleich eine eigene Komponente empfehlen zu schreiben die genau das macht. Klar kann man auch OnPaint der Paintbox verwenden. Aber wenn man richtig Objectorientiert arbeitet ergeben sich da meist noch unterklassen und weitere Eigenschaften die auch irgendwo untergebracht werden wollen.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz