:( Debugger mi sie czepia prawie wszystkiego co z canvasem z

0

Mam sobie OnMeasureItem w TListBox, Canvas.Height debugger uznaje za cos mu nieznanego, podobnie mam z dzisiaj z TransparentColorValue etc.

prawie druga w nocy wiec nie mam na tyle chlodnej mozgownicy aby cos wymyslec, poszperalem w kodach na necie i wszystkie sa podobne, a u mnie jakims cudem nie dzialaja :(. Siedze na delphi 6 PE bez zadnego SP.

Moze zna ktos rozwiazanie, albo inna droge aby moc samemu deklarowac wysokosc poszczegolnego itemu w listboksie (raz wieksza, raz mniejsza)?

0

A może by tak przykładzik kodu? Może jakaś instrukcja with i mu sie pochrzaniło, czego to Canvas?

Zresztą jak znam życie, po przespaniu się sam znajdziesz błąd.

0

W którym miejscu kodu wywołujesz Canvas.Height? No bo metoda OnMeasureItem nie posiada pola Canvas...

0

Klasa Canvas nie ma pół width i heigth, za to mamy Canvas.ClipRect.

0

Tak jak napisal pq, przespalem sie i znalazlem bledzik. Deklaracja procedury wyglada tak:

MeasureItem(Control: TWinControl; Index: Integer;
  var Height: Integer);

wiec wystarczy samo height := 20; itp. aby zadzialalo, natomiast ja sie wzorowalem na blednym kodzie (mozliwe ze ze starszych wersji delphi or smth like that) z serwisu delphiqa, gdzie bylo wyraznie Canvas.Height

Dzieki za odpowiedzi!

1 użytkowników online, w tym zalogowanych: 0, gości: 1