webForumDet fria alternativet

Playlist

8 svar · 340 visningar · startad av trasher

trasherMedlem sedan mars 200142 inlägg
#1

Jag behöver på något sätt kunna visa
i en listbox eller vad som helst vilken
fil som är aktiv. t.ex. fet font eller nått...
Är det någon som har ett förslag?
Och sen skulle jag behöva göra så att
om listboxen får in en fil säg:
c:\kalle\anka.txt så ska den visa
anka och vara := c:\kalle\anka.txt.

------------------
- Trasher a.k.a Kristian

jtMedlem sedan juni 2000326 inlägg
#2

Du borde kunna använda Listboxens event OnDrawItem.

Först måste du sätta:
ListBox1.Style := lbOwnerDrawFixed

Sedan skriver du något som liknar detta i OnDrawItem(exemplet borde markera valt item med rödtext):

With Control As TListbox Do
Begin
if (odSelected in State) then
begin
Canvas.Font.Style := [fsBold];
Canvas.Font.Color := clRed;
end;
Canvas.TextRect( Rect, Rect.Left + 3, Rect.Top, Items[index] );
end;

trasherMedlem sedan mars 200142 inlägg
#3

ok, det fungerar ;). Tack.
Men om jag vill att den itemen som
motsvarar mplayer2.filename ska vara
bold, hur blir det då? För nu är det
ju den valda i listboxen vilket inte
var meningen...

------------------
- Trasher a.k.a Kristian

jtMedlem sedan juni 2000326 inlägg
#4

Jag vet ju inte vad du håller på med men...

Det borde funka om du bytter "if (odSelected in State) then" till
"if Items[index]= mplayer2.filename then". Du kanske behöver köra repaint på listboxen när du ändrar mplayer2.filename.

Annars kan du väl se till så att rätt item i listboxen blir valt när du byter mplayer2.filename.

trasherMedlem sedan mars 200142 inlägg
#5

Man tackar, nu fungerar det väldigt bra ;).
Du har inte en lösning på mitt andra problem också?:
om listboxen får in en fil(item) säg
c:\kalle\anka.txt så ska den visa
anka och betyda c:\kalle\anka.txt för
mplayer2.filename?

------------------
- Trasher a.k.a Kristian

[Redigerat av trasher den 20 dec 2001]

[Redigerat av trasher den 20 dec 2001]

jtMedlem sedan juni 2000326 inlägg
#6

>Du har inte en lösning på mitt andra program också?

Ändra lite i OnDrawItem:

var
ItemText: String;

ItemText := ChangeFileExt(ExtractFileName(Items[index]), '');
Canvas.TextRect( Rect, Rect.Left + 3, Rect.Top, ItemText);

[Redigerat av jt den 20 dec 2001]

trasherMedlem sedan mars 200142 inlägg
#7

Ännu ett problem ...
Om jag vill kunna flytta en item i listboxen genom att hålla ner vänster musknapp och dra upp & ner. Hur ska jag gå till väga då?

------------------
- Trasher a.k.a Kristian

MurMelMedlem sedan dec. 20013 inlägg
#8

Trasher skulle man kunna få typ källkoden på din spelare så man skulle kunna få lära sig nått?? Jag försöker också göra en player men är inte så bra på att programera! :-)
MVH / Pontus

trasherMedlem sedan mars 200142 inlägg
#9

Nja inte just nu iaf...
Kanske senare. Det är dock mycket
kvar som ska skrivas...

------------------
- Trasher a.k.a Kristian

Genererad på 387 ms · cache AV · v20260730165559-full.f96bc7eb