Hi Leute,
in was für eine gedankliche Sackgasse hab ich mich jetzt wieder verrannt?
Ich hab ja schon im anderen Thread (Ist es möglich RadioButtongruppen aus 2 Instanzen einer UserControl zu "verknüpfen") gesagt, dass ich das Projekt nochmal neu gestallten wollte.
Folgende neue Hürde kam dabei raus:
Einfaches Programm Mp3 Player: File-Open Dialog, um die Mp3 Datei zu öffnen und drei Buttons Play/Pause/Stop (mit der Bass.dll)
Im ersten Versuch hab ich mir eine UserControl erstellt, die sowohl den FileDialog, als auch die Buttons Play,Pause,Stop beherbergte. Das fand ich nicht gut. Daher wollte ich es diesmal sauberer trennen und hab 2 UserControls benutzt. 1 Uc für den OpenFile Dialog und 1 Uc für Play,Pause,Stop.
Mein Problem ist jetzt, wie sollen die mit einander arbeiten?
Zwei UcKlassen FileDialog und PlayerControls in der MainForm mit je 2 Instanzen von beidem. Wenn ich jetzt Play-Button drücke müsste sowas passieren
FilePath müsste immer das sein, was der User in der Instanz der anderen Klasse UcFile eingibt und dann in der Textbox ausgegeben wird.
Spoiler anzeigen
Wie bekomme ich eine Saubere Zusammenarbeit hin. Das der Dateipfad der in der einen Uc eingegeben wird in der anderen Uc benutzt werden kann, wenn da der PlayButton gedrückt wird. Ist das wieder etwas für RasieEvent und Delegate ?? Ich versuche hiernach auch wirklich eine Woche lang keinen neuen Thread aufzumachen
Also Objekt UcControls1 von UcControls soll immer den Pfad von Objekt UcFile1 der Klasse UcFile nehmen.
in was für eine gedankliche Sackgasse hab ich mich jetzt wieder verrannt?
Ich hab ja schon im anderen Thread (Ist es möglich RadioButtongruppen aus 2 Instanzen einer UserControl zu "verknüpfen") gesagt, dass ich das Projekt nochmal neu gestallten wollte.
Folgende neue Hürde kam dabei raus:
Einfaches Programm Mp3 Player: File-Open Dialog, um die Mp3 Datei zu öffnen und drei Buttons Play/Pause/Stop (mit der Bass.dll)
Im ersten Versuch hab ich mir eine UserControl erstellt, die sowohl den FileDialog, als auch die Buttons Play,Pause,Stop beherbergte. Das fand ich nicht gut. Daher wollte ich es diesmal sauberer trennen und hab 2 UserControls benutzt. 1 Uc für den OpenFile Dialog und 1 Uc für Play,Pause,Stop.
Mein Problem ist jetzt, wie sollen die mit einander arbeiten?
Zwei UcKlassen FileDialog und PlayerControls in der MainForm mit je 2 Instanzen von beidem. Wenn ich jetzt Play-Button drücke müsste sowas passieren
VB.NET-Quellcode
- Public Class UcControlMp3
- Public FilePath As String = Nothing
- Public chan As Int32
- Private Sub BtPlay_Click(sender As Object, e As EventArgs) Handles BtPlay.Click
- If FilePath IsNot Nothing Then
- chan = Bass.BASS_StreamCreateFile(FilePath, 0, 0, BASSFlag.BASS_SAMPLE_FLOAT Or BASSFlag.BASS_STREAM_AUTOFREE)
- End If
- End Sub
- End Class
FilePath müsste immer das sein, was der User in der Instanz der anderen Klasse UcFile eingibt und dann in der Textbox ausgegeben wird.
VB.NET-Quellcode
- Public Class UcFileMp3
- Public soundFilePath As String = Nothing
- Private Sub BtOpenFile_Click(sender As Object, e As EventArgs) Handles BtOpenFile.Click
- Using openFileDialog1 As New OpenFileDialog()
- openFileDialog1.InitialDirectory = ""
- openFileDialog1.Filter = "Mp3 Dateien (*.mp3)|*.mp3|alle Dateien (*.*)|*.*"
- If openFileDialog1.ShowDialog() = DialogResult.OK Then
- soundFilePath = openFileDialog1.FileName
- TxbMp3File.Text = soundFilePath
- End If
- End Using
- End Sub
- Private Sub BtClearFile_Click(sender As Object, e As EventArgs) Handles BtClearFile.Click
- TxbMp3File.Clear()
- End Sub
- End Class
Wie bekomme ich eine Saubere Zusammenarbeit hin. Das der Dateipfad der in der einen Uc eingegeben wird in der anderen Uc benutzt werden kann, wenn da der PlayButton gedrückt wird. Ist das wieder etwas für RasieEvent und Delegate ?? Ich versuche hiernach auch wirklich eine Woche lang keinen neuen Thread aufzumachen
Also Objekt UcControls1 von UcControls soll immer den Pfad von Objekt UcFile1 der Klasse UcFile nehmen.
codewars.com Rank: 4 kyu