Autor Beitrag
Apollo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 125

Windows 7
Delphi 3 Prof., Delphi 2005
BeitragVerfasst: Mi 25.06.08 13:43 
Hallo Delphianer,

für meinen Mediaplayer habe ich sone mitlaufende Leiste geprogt (so ein ding wo man sieht wie lang das Lied noch läuft).

In einen Timer hab ich das geschrieben (Invertal: 1)
ausblenden Delphi-Quelltext
1:
2:
Gauge1.maxvalue:= Mediaplayer1.lenth;
Gauge1.progress:= Mediaplayer1.position;

Über Gauge1 habe ich eine Paintbox gelegt.
Mausdown ereignis:
ausblenden Delphi-Quelltext
1:
2:
gauge1.Progress := round((100/paintbox1.Width)*x);  
Mediaplayer1.position:= Gauge1.progress;

Also Lied fängt an, Gauge1 bewegt sich normal(Timer), drück ich jetzt irgendwo auf das Gauge(eigendlich ja Paintbox), ist der Progress von Gauge1 nicht zu sehen und das Lied stopt. Drückt man Play geht das Lied von vorne los. Dabei soll Lied aber an die Stelle springen wo man hingeklickt hat.

Hoffe ihr wisst was ich meine. Ein Problem zu haben ist halt einfacher als eins zu beschreiben.

mfg Apollo

Ach ja bevor ich's noch vergess, der Trick mit der Paintbox kommt von Tilman :wink:

---Moderiert von user profile iconNarses: Überflüssige Zeilenumbrüche entfernt---

_________________
Im Zweifelsfall immer das Richtige tun


Zuletzt bearbeitet von Apollo am Mi 25.06.08 13:58, insgesamt 1-mal bearbeitet
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mi 25.06.08 13:52 
1. Danke lieber Tilman für den Tipp mit der Paintbox :roll:

2. Mein Beispiel geht davon aus dass deine Gauge von 0 bis 100 geht. Weil aber TMediaPlayer soweit ich weiß nicht in Prozenten gesteuert wird müsstest du Gauge.MaxValue noch anpassen (und die Zahl 100 in der Formel entsprechend)

// edit
Hab grad kein Delphi da aber versuchs mal so:

ausblenden Delphi-Quelltext
1:
gauge1.Progress := round((gauge1.MaxValue/paintbox1.Width)*x);					

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)


Zuletzt bearbeitet von Tilman am Mi 25.06.08 14:07, insgesamt 1-mal bearbeitet
Apollo Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 125

Windows 7
Delphi 3 Prof., Delphi 2005
BeitragVerfasst: Mi 25.06.08 14:06 
Hab dir im entsprechenden Post gedankt, das is was neues (trotzdem danke).

Du meist also so:
ausblenden Delphi-Quelltext
1:
2:
gauge1.Progress := round((Mediaplayer1.lenth/paintbox1.Width)*x);    
Mediaplayer1.position:= Gauge1.progress;


Ich Probiers mal aus, Danke @Tilman

mb

mfg Apollo

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

Naja, am anfang fuktioniert's aber weiter hinten immer weiter weg von der Maus :nixweiss: :bawling:

_________________
Im Zweifelsfall immer das Richtige tun