AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Komponenten zeichnen (per Canvas in TBitmap)

Ein Thema von chri_ri · begonnen am 27. Jul 2009 · letzter Beitrag vom 27. Jul 2009
Antwort Antwort
Benutzerbild von chri_ri
chri_ri

Registriert seit: 16. Okt 2007
Ort: Markkleeberg
37 Beiträge
 
Delphi 7 Enterprise
 
#1

Komponenten zeichnen (per Canvas in TBitmap)

  Alt 27. Jul 2009, 02:07
Ich möchte in einem Bild eine Komponente einblenden. Zum Beispiel die ProgressBar.

Ich weiß zwar wie Ich Text einblenden kann ( <canvas>.TextOut() ) aber ich finde leider keinen Ansatz um z.B. eine ProgressBar einzublenden da diese mir kein *.canvas bietet. Mit <ProgressBar>.PaintTo() funktioniert es auch nicht. Und über <ProgressBar>.ClientRect bekomme ich nur ein weißes Rechteck in den Abmessungen der ProgressBar.

Könntet Ihr mir vielleicht einen Tipp geben wie Ich das anstellen könnte?

Würde mich sehr freuen. Schonmal THX im Vorraus!



mfg. chri_ri
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.586 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Komponenten zeichnen (per Canvas in TBitmap)

  Alt 27. Jul 2009, 06:07
Da eine Progressbar (zumindest ab Vista, wo der Verlauf verzögert wird bei Sprüngen im Fortschritt) die Position nur darstellt, wenn die Progressbar sichtbar ist, wird das kaum so gehen wie du dir das wohl vorstellst...

// EDIT:
Notlösung:
Die ProgressBar außerhalb des sichtbaren Formularbereichs schieben und dort für eine Sekunde oder so sichtbar machen vor dem PaintTo.

Passendere Lösung:
Selbst eine Fortschrittsanzeige zeichnen, dann gibt es auch keine Probleme...
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#3

Re: Komponenten zeichnen (per Canvas in TBitmap)

  Alt 27. Jul 2009, 08:04
Hallo,

und warum blendest Du nicht direkt die Progressbar über dem Bild ein?
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
Benutzerbild von chri_ri
chri_ri

Registriert seit: 16. Okt 2007
Ort: Markkleeberg
37 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Komponenten zeichnen (per Canvas in TBitmap)

  Alt 27. Jul 2009, 23:06
Erstmal Danke für die Antworten.

@jaenicke:
Die Notlösung werde ich mal ausprobieren^^
Und das Selberzeichnen wäre eigentlich keine so schlechte Idee. Müsste dann nur wissen, wie Ich die "Balkenstücke" vom aktuellem Windows-Theme verwenden kann.

@Lannes:
Weil Ich das Bild hinterher mit der Einblendung abspeichern möchte/muss.



mfg. chri_ri
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.586 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Komponenten zeichnen (per Canvas in TBitmap)

  Alt 27. Jul 2009, 23:20
Zitat von chri_ri:
Die Notlösung werde ich mal ausprobieren^^
Und wie gesagt (falls du unter XP programmierst):
Unter Vista muss die ProgressBar eine Sekunde oder so sichtbar sein, damit der Wert wirklich angezeigt wird, sonst ist die leer. Unter XP wird es vermutlich auch ohne gehen, da da diese Glättung der Fortschrittsanzeige noch nicht gemacht wurde.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  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 01:05 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