Delphi-PRAXiS
Seite 4 von 11   « Erste     234 56     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   TMIDIPlayerComp (https://www.delphipraxis.net/160875-tmidiplayercomp.html)

EWeiss 14. Dez 2011 00:37

AW: TMIDIPlayer2
 
Wenn es nur rein um den Text geht ist das mit einer Zeile erledigt. Oder? ;)

Addiere ne RichEdit auf dein Formular deaktiviere "HIDESCROLLBAR"
und aktiviere Scrollbars [ssBoth]
RichEdit deshalb weil sie TStrings enthält und der Text auf grund dessen nicht extra formatiert werden muss.

In der procedure
Delphi-Quellcode:
procedure TForm1.btnOpenClick(Sender: TObject);

addierst du diese Zeile zu dem projekt
vor ..
Delphi-Quellcode:
 // PositionBar.Max := MidiFile.PlayTicks;
  PositionBar.Max := round(MidiFile.Duration / 100.0);
.......
Delphi-Quellcode:
// Get Lyrics
  RichEdit1.Text := MidiFile.Lyrics;
sieht dann so aus !!

Delphi-Quellcode:
// Get Lyrics
  RichEdit1.Text := MidiFile.Lyrics;
 // PositionBar.Max := MidiFile.PlayTicks;
  PositionBar.Max := round(MidiFile.Duration / 100.0);
das ergebnis siehe Pic..

PS:
Hab noch ein kleines problem gefunden.. In der Unit MidiFile2
Delphi-Quellcode:
function TMidiFile2.ReadFromFile(const FileName: WideString): Boolean;
var
  FileInfo: TMidiFileInfo;
  I, N: integer;
  LyricsTrack: Integer;
begin
  try
    FileInfo.TrackList := nil;
    FileInfo.TempoList := nil;
    FLyrics := ''; // Diese Zeile addieren um den zuvor geladenen Lyric string zu löschen.
    FIsValid := GetInfo(FileName, FileInfo);
  except
gruss

EWeiss 18. Dez 2011 08:01

AW: TMIDIPlayer2
 
Neue Version oben..
Added "Sync Lyics" & "Plain Lyrics" Display.

gruss

beanbear6 19. Dez 2011 16:41

AW: TMIDIPlayer2
 
Hallo Emil,
nun weis ich nicht... die Zip oben, mit den
Kompos gehen die auch für D5 oder nur für D7??
Kann es sein, dass ich nun wieder diese TNT-Kompos
brauche??? Krieg sowohl bei D5 als auch bei D7
beim Installieren der dpk Fehlermeldungen...

Äh... das Bild oben zeigt die Lyrics mit Zeilenumbruch,
in der Zip weiter oben geht das nicht... Gibts da
irgendwie nen Trick? Wie gesagt, wenn ich das Projekt
hinkrieg will ich mich wirklich erkenntlich zeigen...
Ich hoffe Ihr habt genug geduld mit mir...
Gruß Reiner

EWeiss 19. Dez 2011 19:50

AW: TMIDIPlayer2
 
Zitat:

Zitat von beanbear6 (Beitrag 1142261)
Hallo Emil,
nun weis ich nicht... die Zip oben, mit den
Kompos gehen die auch für D5 oder nur für D7??
Kann es sein, dass ich nun wieder diese TNT-Kompos
brauche??? Krieg sowohl bei D5 als auch bei D7
beim Installieren der dpk Fehlermeldungen...

Äh... das Bild oben zeigt die Lyrics mit Zeilenumbruch,
in der Zip weiter oben geht das nicht... Gibts da
irgendwie nen Trick? Wie gesagt, wenn ich das Projekt
hinkrieg will ich mich wirklich erkenntlich zeigen...
Ich hoffe Ihr habt genug geduld mit mir...
Gruß Reiner

TNT Componente musst du verwenden wenn du die Version mit den Componenten verwendest.
Warum willst du die Version mit den Componenten verwenden?
Hab doch extra für dich eine ohne erstellt.

Ob das mit D5 geht kann ich nicht sagen hab kein Delphi unter D7

Denke bei dem Zeilenumbruch verwechselst du die beiden Archive.
Exe im Zip-Archiv sollte mit Umbruch gehen.
Exe im Rar-Archiv geht der Umbruch nicht weil hier die Srollbars ssBoth aktiviert wurden.

gruss

beanbear6 20. Dez 2011 04:03

AW: TMIDIPlayer2
 
Hallo Emil,
nun hab ich ne RichEdit auf die Form gelegt, da krieg ich die
Zeilenumbrüche :lol: und das mit den TNT bzw. ohne TNT geht nun auch..

Könnte man die beiden Fenster (SyncLyrics) mit dem Rich noch so verbinden,
dass im Rich der Text dann rot wird zu gegebener Zeit? (So wie Karaoke?)
Dann wär das oooptimal und perfekt :) Weist, ich bräuchte sowas unbedingt
für unsere kleine Musikgruppe... Wär sooo Klasse...

Gruß und vielen vielen Dank für Deine bisherige Hilfe!!!
Reiner

EWeiss 20. Dez 2011 04:52

AW: TMIDIPlayer2
 
Zitat:

Auch sieht die Form nicht so aus wie in der oben gezeigten Grafik...
Sieht deshalb anders aus weil ich die http://www.delphipraxis.net/162206-t...omponente.html nicht verwende.
Da fehlt dann die Mute Checkbox.

Zudem ist die EXE im Rar-Archiv nicht Unicode fähig da TNT- Componente http://www.delphipraxis.net/1139108-post23.html nicht verwendet werden.
Der Zeilenumbruch hingegen ist so in Ordnung.

gruss

beanbear6 20. Dez 2011 05:15

AW: TMIDIPlayer2
 
Hi Emil,
jetzt glaub ich haben sich die Posts überschnitten...
Hab mein Posting vorhin nochmal geändert -siehe oben.

Vielleicht kann man das mit der roten Farbe noch irgendwie
integrieren...
(Und dann möchte ich mich wirklich bissl erkenntlich zeigen!!)
Gruß und Danke für die klasse Hilfe!!!
Gruß Reiner

EWeiss 20. Dez 2011 06:33

AW: TMIDIPlayer2
 
Zitat:

Vielleicht kann man das mit der roten Farbe noch irgendwie
integrieren...
Kann ich nicht verstehen ..
Es wird bei Plain Lyrics der gesamte Text angezeigt und bei Sync Lyics der welcher gerade gesungen/aktiv ist.
Warum das ganze jetzt noch Rot?

gruss

musicman56 20. Dez 2011 09:31

AW: TMIDIPlayer2
 
@Emil

vermutlich möchte er den Text so darstellen, wie es beim Miditemp, in Arranger-Keyboards usw. üblich ist. Es reicht in der Praxis nicht aus, dass man den "aktuellen" Text sieht, man muss immer etwas "voraus" sehen können.

Dazu wird normalerweise der gesamte Text - wichtig: mit Zeilenumbrüchen - angezeigt, und der aktuell gesungene Bereich markiert. Mit den "Sel.."-Funktionen der Memo's geht das ziemlich einfach.

Nachtrag: Ich bin Musiker und überzeugt, dass die Selektion ein zwingend erforderliches Feature für den Live-Einsatz ist.

Mit musikalischem Gruss

musicman56

EWeiss 20. Dez 2011 10:41

AW: TMIDIPlayer2
 
Zitat:

Mit den "Sel.."-Funktionen der Memo's geht das ziemlich einfach.
Er sagt ja das er nicht so gut im Programmieren ist..

Mit dem Memo habe ich selbst noch nicht so viel gemacht das ich das so einfach wie du sagst umsetzen kann
ohne mich jetzt wieder ein paar Stunden damit zu beschäftigen.

Hast vielleicht ein Beispiel ?

Dann bau ich es noch ein.

PS:
Mit Sel.. alleine ist das nicht getan da der String ja doppelt vorkommen kann "dance" als Beispiel
Es muss also der gesamte Text zeile für zeile geparst werden und dann mit der übergebenen Event^.Msg verglichen werden.
Bzw.. Nur die Aktuelle Zeile.

Aber wie gesagt das ist nicht mal gerade in 5 min gemacht. ;)



gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:40 Uhr.
Seite 4 von 11   « Erste     234 56     Letzte »    

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