[Delphi] Jak odnotować moment pojawienia się Scrollbar'a?

0

Nie sądzę by był już taki temat, bo użyłem wyszukiwarki (choć istnieje taka możliwość, ciężko jest sformułować nazwę, by wiadomo było o co chodzi).

Mam komponent TListview, ściśle dopasowany do rozmiarów okna głównego programu. Gdy na liście jest więcej elementów, pojawia się pionowy scrollbar. Razem z nim, niestety pojawia się także scrollbar poziomy (jak pisałem - komponent jest ściśle dopasowany do okna programu, zmiana jego rozmiaru - za sprawą pionowego paska - powoduje pojawienie się dolnego suwaka). Nie chcę usuwać ani chować tych scrollbarów, chcę po prostu zmienić rozmiar komponentu TListview, w momęcie gdy pojawia się pionowy scrollbar (tak by ten poziomy już nie musiał się pojawiać).

Chcę uzyskać coś takiego:

warunek - Pionowy scrollbar pojawia się
akcja - zmień rozmiar komponentu...

lub też

warunek - coś tam
akcja - if Pionowy scrollbar pojawia się then zmień rozmiar komponentu.

Aha, odpada warunek liczący elementy na liście, gdyż mam zamiar dać użytkownikowi możliwość zmiany rozmiaru okna, wtedy ilość elementów nie będzie miała znaczenia.

Pozdrawiam i przepraszam jeżeli taki temat (albo podobny) już był.
Mój problem polega na tym, że nie za bardzo wiem jak odnotować moment pojawienia się tego scrollbara, możecie mi pomóc?

0

A nie możesz od razu zwiększyć szerokości ListView o te kilka pikseli na pasek? Będzie łatwiej.

0

Pewnie że mogę, ale właśnie chcę tego uniknąć, bo wygląda to niezbyt estetycznie (robię już taki poważniejszy program, nie dla siebie "do szuflady", ale do opublikowania i chcę żeby wyglądał profesjonalnie :P).

0

Otóż wpisałem - wcale nie licząc, że coś znajdę, bo ueirzyłem, że przed zadaniem pytania sam szukałeś,
delphi listview detect horizontal scrollbar - no i szósta strona okazała się rozwiązaniem Twojego problemu,
w Delphi sprawdziłem, działa dla ListView i pewnie innych komponentów, które mogą posiadać ScrollBary.
http://www.swissdelphicenter.ch/torry/showcode.php?id=758 - to powinno Tobie pomóc. Inaczej nie wiem.

0

O to mi właśnie chodziło, dziękuję.

Szukałem odpowiedzi na własną rękę, zarówno na tym forum jak i przez googlowanie, ale nic nie znalazłem :-/ Prawdopodobnie dlatego że ciężko mi było wymyśleć, jakich słów kluczowych mam szukać...

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