Guten Tag,
Da ich schon desöfteren Media player ohne eine eigene Statusanzeige gesehen habe will ich euch nun erklären wie ihr es schafft mit einem Eigenen Usercontrol und die Prozentzahl wie lange dass lied schon läuft.
Was braucht ihr?
- Eine Klassenbiblothek
- Ein Usercontrol
- Ein Button auf dem Usercontrol
Erstmal importiert ihr folgendes
Dann müsst ihr euch im klaren sein, dies ist eher für User gedacht die noch nicht so viel erfahrung mit Vb hatten, deshalb ist dieses Tut sehr einfach gehalten und eigentlich auch gut erklärt. Imports ComponentModel erst damit können wir die Property eigenschaften richtig selber machen sonst kommen immer fehler Beispielsweise bei <Browsable>
So erstmal müsst ihr euch ein Schönes Usercontrol basteln, in meinen Beispiel machen wir es mir einem
Transparenten Hintergrund und einem Button. Wichtig hierbei ist dass ihr die Anchor von allen Objekten einstellt damit sich die Objekte richtig an die Ränder ranziehen beim Button zum Beispiel Top und Bottom dass heißt Oben Unten soll es sich ranziehen.
So nun habt ihr einen kleinen Button hingelegt und tut erstmal in die Form Load vom Usercontrol folgenden Code:
Dass soll bewirken dass wenn man über den Button fährt dass er sich nicht sofort bewegt, er soll sich erst bewegen wenn die Maus gedrückt ist mehr dazu gleich.
Kommen wir nun zum Button1_MouseDown event, dieser Event wird aufgerufen wenn die Maus auf den Button gedrückt wird d.h Die Maustaste runtergedrückt wird.
Dort tut ihr dann folgenden Code rein:
Ohne disen Code Funktioniert die ganze Statusanzeige nicht, dass ist dazu da das wenn der Button runtergedrückt wird man den Button verschieben kann wie man ihn jedoch verschiebt erkläre ich wiederrum gleich.
Ins MouseMove erreignis vom Button kommt nun folgender Code:
Dass ist dazu da damit der Button sich auf MausDown und bewegung bewegt.
Der folgende Code ist jetzt auch ganz wichtig und kommt ins MouseUpereignis:
Dieser Code ist dafür da dass das MouseMove ereignis nicht noch ausgeführt werden kann beim nächsten mal wenn man mit der Maus rüber fährt.
Erstmal macht ihr jetzt noch oben unter Public Class
Jetzt kommen wir zum Eigentlichen Code, mit diesen Code machen wir dass man über eine Eigenschaft (bei uns Zeit) Die Position des Buttons auch bewegen kann damit immer der aktuelle Status angezeigt wird. Folgender Code erstmal in keine Sub Unter einer End Sub:
Dass sagt sowas aus wie dass die folgende Property im Eigenschaftsfenster auffindbar ist.
Die Property sub die gleich darunter kommt:
Dass ist bis jetzt noch eine Leere Property Zeit
Es kann dann später aufgerufen werden mit z.b
Statusanzeige1.Zeit = 5%.
Jetzt kommt der richtige code der da zwischen kommt:
Get und Return value besagt dass er die Value von value nehmen soll.
Set(Byval value as String)
value besagt dass was im Eigenschaftsfenster / Im Code von euch später angegeben wurden ist
Button1.Location - New Point ist alles dass Die Position verändert werden kann.
Die if abfrage prüft ob ein % drin ist muss aber auch nicht!
100 / Me.Width * value etc. sagt aus dass 1 % = 1% ist der Button weiter nachvorne geggangen aber die Y Koordinaten bleiben gleich.
End Set ist die beendung ähnlich wie End Sub Aber es gibt ja nochmal extra die End Property.
Jetzt müsst ihr Debuggen und gucken ob alles klappt (sollte wenn ihr es richtig gemacht habt)
Und dann könnt ihr es speichern.
Ihr wählt in euer Windows Forms (euer Player)
Extras -> ToolBoxelemnte auswählen
Geht auf Durchsuchen und sucht im Projektordner die DLL.
Dann ist sie in euer Toolbox und ihr könnt sie hinzufügen.
Jetzt fragt ihr euch evt. wie könnt ihr überhaupt ausrechnen wie weit dass lied ist?
Also Es gibt immer eine CurrentPosition und eine Duration
Currentposition ist wo das lied gerade ist und Duration ist wieviel es isngesamt hat
ihr müsstet es dann ca. so aufrufen:
Dann sollte die Statusanzeige richtig laufen
und dann müsst ihr je nach Player dass gleiche machen damit es auch veränderbar ist
EuerPlayer.Currentposition = Statusanzeige.Zeit
(beim Verändern)
Hoffe mein Tutorial hat euch geholfen
Falls fragen dort sind meldet euch ruhig
Mfg
Confix
Achja bei mir sah es so am ende aus siehe Anhang.
Wenn ihr aber wirklich einen Guten Media player machen wollt
dann solltet ihr das schöner gestalten und evt. auch mit Grafiken (eine Picturebox die sich über die Form zieht) ähnlich wie beim Anadroxy player oder wie der heißt^^
Da ich schon desöfteren Media player ohne eine eigene Statusanzeige gesehen habe will ich euch nun erklären wie ihr es schafft mit einem Eigenen Usercontrol und die Prozentzahl wie lange dass lied schon läuft.
Was braucht ihr?
- Eine Klassenbiblothek
- Ein Usercontrol
- Ein Button auf dem Usercontrol
Erstmal importiert ihr folgendes
Dann müsst ihr euch im klaren sein, dies ist eher für User gedacht die noch nicht so viel erfahrung mit Vb hatten, deshalb ist dieses Tut sehr einfach gehalten und eigentlich auch gut erklärt. Imports ComponentModel erst damit können wir die Property eigenschaften richtig selber machen sonst kommen immer fehler Beispielsweise bei <Browsable>
So erstmal müsst ihr euch ein Schönes Usercontrol basteln, in meinen Beispiel machen wir es mir einem
Transparenten Hintergrund und einem Button. Wichtig hierbei ist dass ihr die Anchor von allen Objekten einstellt damit sich die Objekte richtig an die Ränder ranziehen beim Button zum Beispiel Top und Bottom dass heißt Oben Unten soll es sich ranziehen.
So nun habt ihr einen kleinen Button hingelegt und tut erstmal in die Form Load vom Usercontrol folgenden Code:
Dass soll bewirken dass wenn man über den Button fährt dass er sich nicht sofort bewegt, er soll sich erst bewegen wenn die Maus gedrückt ist mehr dazu gleich.
Kommen wir nun zum Button1_MouseDown event, dieser Event wird aufgerufen wenn die Maus auf den Button gedrückt wird d.h Die Maustaste runtergedrückt wird.
Dort tut ihr dann folgenden Code rein:
Ohne disen Code Funktioniert die ganze Statusanzeige nicht, dass ist dazu da das wenn der Button runtergedrückt wird man den Button verschieben kann wie man ihn jedoch verschiebt erkläre ich wiederrum gleich.
Ins MouseMove erreignis vom Button kommt nun folgender Code:
Dass ist dazu da damit der Button sich auf MausDown und bewegung bewegt.
Der folgende Code ist jetzt auch ganz wichtig und kommt ins MouseUpereignis:
Dieser Code ist dafür da dass das MouseMove ereignis nicht noch ausgeführt werden kann beim nächsten mal wenn man mit der Maus rüber fährt.
Erstmal macht ihr jetzt noch oben unter Public Class
Jetzt kommen wir zum Eigentlichen Code, mit diesen Code machen wir dass man über eine Eigenschaft (bei uns Zeit) Die Position des Buttons auch bewegen kann damit immer der aktuelle Status angezeigt wird. Folgender Code erstmal in keine Sub Unter einer End Sub:
Dass sagt sowas aus wie dass die folgende Property im Eigenschaftsfenster auffindbar ist.
Die Property sub die gleich darunter kommt:
Dass ist bis jetzt noch eine Leere Property Zeit
Es kann dann später aufgerufen werden mit z.b
Statusanzeige1.Zeit = 5%.
Jetzt kommt der richtige code der da zwischen kommt:
Get und Return value besagt dass er die Value von value nehmen soll.
Set(Byval value as String)
value besagt dass was im Eigenschaftsfenster / Im Code von euch später angegeben wurden ist
Button1.Location - New Point ist alles dass Die Position verändert werden kann.
Die if abfrage prüft ob ein % drin ist muss aber auch nicht!
100 / Me.Width * value etc. sagt aus dass 1 % = 1% ist der Button weiter nachvorne geggangen aber die Y Koordinaten bleiben gleich.
End Set ist die beendung ähnlich wie End Sub Aber es gibt ja nochmal extra die End Property.
Jetzt müsst ihr Debuggen und gucken ob alles klappt (sollte wenn ihr es richtig gemacht habt)
Und dann könnt ihr es speichern.
Ihr wählt in euer Windows Forms (euer Player)
Extras -> ToolBoxelemnte auswählen
Geht auf Durchsuchen und sucht im Projektordner die DLL.
Dann ist sie in euer Toolbox und ihr könnt sie hinzufügen.
Jetzt fragt ihr euch evt. wie könnt ihr überhaupt ausrechnen wie weit dass lied ist?
Also Es gibt immer eine CurrentPosition und eine Duration
Currentposition ist wo das lied gerade ist und Duration ist wieviel es isngesamt hat
ihr müsstet es dann ca. so aufrufen:
Dann sollte die Statusanzeige richtig laufen
und dann müsst ihr je nach Player dass gleiche machen damit es auch veränderbar ist
EuerPlayer.Currentposition = Statusanzeige.Zeit
(beim Verändern)
Hoffe mein Tutorial hat euch geholfen
Falls fragen dort sind meldet euch ruhig
Mfg
Confix
Achja bei mir sah es so am ende aus siehe Anhang.
Wenn ihr aber wirklich einen Guten Media player machen wollt
dann solltet ihr das schöner gestalten und evt. auch mit Grafiken (eine Picturebox die sich über die Form zieht) ähnlich wie beim Anadroxy player oder wie der heißt^^
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Confix.npage.de“ ()