Autor Beitrag
hanibal
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Mo 14.08.06 07:55 
ich habe einen kleinen mediaplayer programmiert, wo ich das abgespielte liet grün hinterlege.
in einem timer aktualesirt sich das all 500 ms, das man sobalt man in der list scrollt die mackierung auflöst.
das funktioniert gut, doch sobalt die maus das fenster verlässt, fängt es an zu flackern.
das is erst, seit dem ich als hintergrund, und als fensterform ein bitmap verwende.
welches übriegenz auch grün ist
fidionael
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 232

Win XP SP2, Ubuntu 6.06
Delphi 7 PE, Delphi 3 Prof
BeitragVerfasst: Mo 14.08.06 08:52 
Ich kann dir jetzt so aus dem Stehgreif keine hübsche Erklärung liefern, warum es flackert, aber mein erster Versuch bei Flackern wäre immer DoubleBuffering.

Such einfach mal im Forum danach, oder, wenn du es bereits eingebaut hast, zeig am besten mal ein wenig Quelltext, sonst kann man dir nur schlecht weiterhelfen.

Mfg
Fighter#1
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 787

Win XP, Ubuntu 8.04
Turbo Delphi 2006, Delphi 2005 Pe, Delphi 5 Pe, Netbeans 6.1, Eclipse, Microsoft VisualC#, Dev C++, PHP, HTML, CSS
BeitragVerfasst: Mo 14.08.06 09:04 
das mit dem timer ist ja wohl keine patentlösung.
Versuch das mit dem onMouseDOwn ereignis der LIstbox zu machen, was du bis jetzt mit dem Timer machst

_________________
Wer andere beherrscht ist stark,
wer sich selbst beherrscht ist mächtig. Lao Tse
hanibal Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Mo 14.08.06 13:15 
das problem, ist, dass es auch in onwheel müsste, aber das gibt es bei listbox nicht
Fighter#1
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 787

Win XP, Ubuntu 8.04
Turbo Delphi 2006, Delphi 2005 Pe, Delphi 5 Pe, Netbeans 6.1, Eclipse, Microsoft VisualC#, Dev C++, PHP, HTML, CSS
BeitragVerfasst: Mo 14.08.06 13:39 
hast du Form1.DoubleBufferd:=True schon gesetzt?

_________________
Wer andere beherrscht ist stark,
wer sich selbst beherrscht ist mächtig. Lao Tse
hanibal Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Mo 14.08.06 14:08 
ja, und daran kann es nicht liegen

es flackert ja nur, wenn die maus nicht im fenster ist, oder das fenster nicht den fokus hat.
wenn man aufen desktop klickt, und dann di maus auf das fenster bewegt, flackert es nicht mehr
wenn man die maus wieder auf den desktop schiebt, flackert es
Fighter#1
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 787

Win XP, Ubuntu 8.04
Turbo Delphi 2006, Delphi 2005 Pe, Delphi 5 Pe, Netbeans 6.1, Eclipse, Microsoft VisualC#, Dev C++, PHP, HTML, CSS
BeitragVerfasst: Mo 14.08.06 14:13 
schick mal den COde aus dem timer!

_________________
Wer andere beherrscht ist stark,
wer sich selbst beherrscht ist mächtig. Lao Tse
fidionael
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 232

Win XP SP2, Ubuntu 6.06
Delphi 7 PE, Delphi 3 Prof
BeitragVerfasst: Mo 14.08.06 14:23 
user profile iconhanibal hat folgendes geschrieben:
das problem, ist, dass es auch in onwheel müsste, aber das gibt es bei listbox nicht


Schreibe doch eine eigene Komponente die du von TListbox ableitest, in der du ein OnWheel-Event definierst. Habe ich auch schonmal gemacht, als ich bei Images MouseOver brauchte, das funktioniert recht einfach und ist effizient.
hanibal Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Mo 14.08.06 14:43 
wie macht man eine mousewheel in die listbox?
hanibal Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Mo 14.08.06 15:35 
nach oben schieb
fidionael
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 232

Win XP SP2, Ubuntu 6.06
Delphi 7 PE, Delphi 3 Prof
BeitragVerfasst: Mo 14.08.06 16:13 
Lies dich mal ein wenig ein: hier oder hier z. B.

Weiterhin benötigst du die entsprechende Message die von Windows an dein Programm gesendet wird, die heißt Suche im MSDN WM_MOUSEWHEEL.

PS:
Richtlinien hat folgendes geschrieben:
4.6 Schiebeposting
Schiebeposting (ein Posting um sein eigenes Topic für unsere Leser wieder als ungelesen zu markieren) sind nach 24 Stunden erlaubt. Es gibt keine Begrenzung von Schiebepostings, sofern ihr Abstand 24 Stunden beträgt.
hanibal Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Mo 14.08.06 18:25 
achso, danke
hanibal Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Mo 14.08.06 18:37 
weiß zufälig einer, wie man die position der scrollbar auslehsen kann?

hab damit eine lösung vor
hanibal Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 157

Win xp
d7 eterprise
BeitragVerfasst: Di 15.08.06 17:39 
nach oben schieb
fidionael
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 232

Win XP SP2, Ubuntu 6.06
Delphi 7 PE, Delphi 3 Prof
BeitragVerfasst: Di 15.08.06 21:10 
Richtlinien hat folgendes geschrieben:
Es ist aufgrund der Anzahl von Fragen notwendig, jede Frage einzeln in die richtige Sparte zu posten, damit kein Chaos entsteht und jedem Mitglied gezielt geholfen werden kann. Schließlich könnten gleichzeitig auch andere Personen als der Fragesteller dasselbe Problem haben.


Poste am besten mal deine Frage ein wenig detaillierter in einen neuen Thread, dann erhälst du bestimmt auch Antwort.