AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi aufeinanderfolgende Bildinhalte darstellen
Thema durchsuchen
Ansicht
Themen-Optionen

aufeinanderfolgende Bildinhalte darstellen

Ein Thema von trajektorde · begonnen am 13. Mai 2009 · letzter Beitrag vom 14. Mai 2009
Antwort Antwort
trajektorde

Registriert seit: 13. Mai 2009
Ort: Ertingen
12 Beiträge
 
#1

aufeinanderfolgende Bildinhalte darstellen

  Alt 13. Mai 2009, 20:01
Hallo,

ich habe mein erstes Delphi-Programm geschrieben, -aus Basic übertragen-,
es zeichnet die Vektoren der Zetafunktion auf, wie sie sich addieren. Das geht ganz gut.
Will ich aber für unterschiedliche Ausgangswerte(des Imaginärwertes von s)
Bilder nacheinander zeichnen, dann bekomme ich erst nach längerer Zeit das letzte gezeichnete Bild zu sehen.

In Basic kann ich immer beobachten, wie sich die aufeinanderfolgenden Bilder verändern, der
Bildschirm jeweils neu gezeichnet wird, so dass sozusagen im Programmablauf eine Art Film abläuft.

Was muss ich da machen?
(das Bild wird jeweils in eine Komponente image1 gezeichnet,
die einzelnen Bilder von while .. do Schleifen erzeugt).

Vielen Dank im voraus,

Thomas
  Mit Zitat antworten Zitat
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#2

Re: aufeinanderfolgende Bildinhalte darstellen

  Alt 13. Mai 2009, 20:05
einfach immer Image1.update oder refresh ausprobieren
  Mit Zitat antworten Zitat
trajektorde

Registriert seit: 13. Mai 2009
Ort: Ertingen
12 Beiträge
 
#3

Re: aufeinanderfolgende Bildinhalte darstellen

  Alt 13. Mai 2009, 21:10
Hallo Marco,

vielen Dank für die schnelle Antwort,
bis jetzt hat es noch nicht geklappt,
versuche erst einmal einfach auf das Formular ohne image1
zu zeichnen, schaut etwas aussichtsreicher aus,
vielleicht liegt es aber doch auch nur an meinen
while-do-
Schleifen,
(habe bisher eigentlich immer mit for next oder goto
gearbeitet, hat auch gut geklappt),
habe nämlich bemerkt, dass nicht mein letztes, sondern doch lediglich das erste bild
angezeigt wird- da ist noch ein Fehler drin-

Grüße,
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: aufeinanderfolgende Bildinhalte darstellen

  Alt 13. Mai 2009, 21:14
Es gibt einen einfachen Grund dafür, dass nicht das aktuellste Bild angezeigt wird: Während eine Schleife läuft, wird die Nachrichtenschleife deines Programms nicht weiter abgearbeitet. In dieser Nachrichtenschleife reiht sich auch WM_PAINT o.ä. ein - welches dafür verantworlich ist, dass dein Fenster neu gezeichnet - aktualisiert - wird. Erst wenn die Schleife zu Ende ist, werden die Nachrichten abgearbeitet, das letzte Bild wird angezeigt. Was bei einer Schleife helfen kann, ist, innerhalb der Schleife ein Application.ProcessMessages anzubringen, damit die Nachrichten verarbeitet und dein Fenster aktualisiert wird.

Hoffe ich konnte helfen, Gruß

Edit: So kann es dann allerdings zum Flackern des Bildes kommen. Hier hilft oft ein DoubleBuffered := True im OnCreate-Event des Formulars.
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
trajektorde

Registriert seit: 13. Mai 2009
Ort: Ertingen
12 Beiträge
 
#5

Re: aufeinanderfolgende Bildinhalte darstellen

  Alt 14. Mai 2009, 13:12
Hallo Robert,

vielen Dank für Deine Antwort,
konnte mich gestern(und auch bis jetzt heute irgendwie nicht mehr einloggen),
auf jeden Fall lerne ich wieder was dazu.
Ist schon spannend, allerdings war der Fehler tatsächlich im
Programmaufbau, jetzt klappt es.
(Zuvor hatte ich Variablen nicht zurückgesetzt und die Vektoren
wurden außerhalb des Bildschirms gezeichnet, seufz-
aber jetzt sieht es gut aus und ist auch richtig schnell gegenüber Blitzbasic-
wobei man dort vielleicht mit einem .exe file auch schneller wäre-
habe ich nicht probiert.

Bis bald again,-(Frage beantwortet)

Thomas

p.s.: falls jemand schauen will, wie die Vektoren funktionieren:
video(s) zur Zetafunktion:
http://www.youtube.com/watch?v=Mrdxc--e2dE
  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 19:59 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