/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
ListBox og grafik
Fra : Kurt G


Dato : 24-10-06 20:47

Jeg har en listbox, hvor jeg på 4 linier skriver data for en geometrisk
figur (cirkel eller rektangel).
Til højre for de fire linier i listboxen vil jeg gerne vise figuren, så den
også printes ud sammen med listboxens data.

Kan man det og i givet fald hvordan?

Mvh Kurt



 
 
Thomas Eg Jørgensen (27-10-2006)
Kommentar
Fra : Thomas Eg Jørgensen


Dato : 27-10-06 10:51

"Kurt G" <kurt_g@guldbaek.net> skrev i en meddelelse
news:453e6dc0$0$49197$14726298@news.sunsite.dk...
> Jeg har en listbox, hvor jeg på 4 linier skriver data for en geometrisk
> figur (cirkel eller rektangel).
> Til højre for de fire linier i listboxen vil jeg gerne vise figuren, så
> den også printes ud sammen med listboxens data.
>

Tag et kig på event'en "OnDrawItem". Husk også at ændre property'en "Style"
for at TListBox anvender custom draw og ikke standard....

MVH
Thomas



Kurt G (27-10-2006)
Kommentar
Fra : Kurt G


Dato : 27-10-06 16:45

>> Jeg har en listbox, hvor jeg på 4 linier skriver data for en geometrisk
>> figur (cirkel eller rektangel).
>> Til højre for de fire linier i listboxen vil jeg gerne vise figuren, så
>> den også printes ud sammen med listboxens data.
>
> Tag et kig på event'en "OnDrawItem". Husk også at ændre property'en
> "Style" for at TListBox anvender custom draw og ikke standard....
>
> MVH
> Thomas

Jeg vil kikke på det. Umiddelbart siger det mig ikke noget.
/Kurt



Kurt G (27-10-2006)
Kommentar
Fra : Kurt G


Dato : 27-10-06 21:21

> Tag et kig på event'en "OnDrawItem". Husk også at ændre property'en
> "Style" for at TListBox anvender custom draw og ikke standard....
>
> MVH
> Thomas

Jeg har nu kikket lidt på det og det ser ud til at kunne, hvad jeg har brug
for.
For at starte et sted har jeg brugt eksemplet fra hjælpen:

procedure TPadEditorForm.lbListDrawItem(Control: TWinControl;
Index: Integer; Rect: TRect; State: TOwnerDrawState);
var
Bitmap: TBitmap; { temporary variable for the item's bitmap }
Offset: Integer; { text offset width }
begin
with (Control as TListBox).Canvas do { draw on control canvas, not on the
form }
begin
FillRect(Rect); { clear the rectangle }
Offset := 2; { provide default offset }
Bitmap := TBitmap((Control as TListBox).Items.Objects[Index]); { get
the bitmap }
if Bitmap <> nil then
begin
BrushCopy(Bounds(Rect.Left + 2, Rect.Top, Bitmap.Width,
Bitmap.Height),
Bitmap, Bounds(0, 0, Bitmap.Width, Bitmap.Height), clRed); {render
bitmap}
Offset := Bitmap.width + 6; { add four pixels between bitmap and
text}
end;
TextOut(Rect.Left + Offset, Rect.Top,(Control as TListBox).Items[Index])
{ display the text }
end;
end;

Det sker der imidlertid intet ved, nok fordi der ikke er specificeret noget
billede.
Hvordan gør jeg det?

/Kurt



Søg
Reklame
Statistik
Spørgsmål : 177428
Tips : 31962
Nyheder : 719565
Indlæg : 6407942
Brugere : 218877

Månedens bedste
Årets bedste
Sidste års bedste