AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte TMIDIPlayerComp

TMIDIPlayerComp

Ein Thema von EWeiss · begonnen am 6. Jun 2011 · letzter Beitrag vom 5. Feb 2016
Antwort Antwort
Seite 4 von 11   « Erste     234 56     Letzte » 
EWeiss
Projekt entfernt..

Geändert von EWeiss (24. Jul 2019 um 04:49 Uhr)
 
EWeiss
 
#31
  Alt 14. Dez 2011, 00:37
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
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

Geändert von EWeiss (11. Jul 2019 um 15:41 Uhr)
  Mit Zitat antworten Zitat
EWeiss
 
#32
  Alt 18. Dez 2011, 08:01
Neue Version oben..
Added "Sync Lyics" & "Plain Lyrics" Display.

gruss
  Mit Zitat antworten Zitat
beanbear6

 
Delphi 7 Enterprise
 
#33
  Alt 19. Dez 2011, 16:41
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
Reiner

Geändert von beanbear6 (19. Dez 2011 um 16:47 Uhr)
  Mit Zitat antworten Zitat
EWeiss
 
#34
  Alt 19. Dez 2011, 19:50
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

Geändert von EWeiss (19. Dez 2011 um 19:55 Uhr)
  Mit Zitat antworten Zitat
beanbear6

 
Delphi 7 Enterprise
 
#35
  Alt 20. Dez 2011, 04:03
Hallo Emil,
nun hab ich ne RichEdit auf die Form gelegt, da krieg ich die
Zeilenumbrüche 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
Reiner

Geändert von beanbear6 (20. Dez 2011 um 04:46 Uhr)
  Mit Zitat antworten Zitat
EWeiss
 
#36
  Alt 20. Dez 2011, 04:52
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
  Mit Zitat antworten Zitat
beanbear6

 
Delphi 7 Enterprise
 
#37
  Alt 20. Dez 2011, 05:15
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
Reiner
  Mit Zitat antworten Zitat
EWeiss
 
#38
  Alt 20. Dez 2011, 06:33
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
  Mit Zitat antworten Zitat
musicman56
 
#39
  Alt 20. Dez 2011, 09:31
@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

Geändert von musicman56 (20. Dez 2011 um 09:55 Uhr)
  Mit Zitat antworten Zitat
EWeiss
 
#40
  Alt 20. Dez 2011, 10:41
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

Geändert von EWeiss (20. Dez 2011 um 10:54 Uhr)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf