Witam państwa, chciałbym dowiedzieć się jedną rzecz: jak ukryć paski do przewijania w module TScrollBox? Podobno da się to zrobić bez większych kłopotów ale nie mogę się nawet tutaj doszukać jak.
Przyznaj się, że nawet nie szukałeś samodzielnie ani chwili. Bo jakim cudem wpisując w Google delphi hide scrollbars
od razu znalazłem co trzeba w wątku pod adresem http://stackoverflow.com/questions/7529524/keep-the-scrollbars-hidden-in-a-delphi-dbgrid-even-on-resize i upeniłem się, że działa także dla ScrollBoxa. Z tym że kod musi zostać wywołany najlepiej z Timera z 10 ms intervalem, którego można po fakcie wyłaczyć.
Z tego co tam było NIC kompletnie nie rozumiem, szukam wyjaśnienia "krok po kroku" co zrobić (nie jestem aż taki mega doświadczony w programowaniu, jakby co to używam Delphi 5)
Ale rozumiem język angielski więc jak coś takiego jest na internecie to bym zrozumiał tylko że wszędzie jest tylko pokazane jak to ma wyglądać a nie jak to zrobić
Ale co tu można napisać masz gotowy kod poprawnego (nie przekombinowanego) rozwiązania:
type
TScrollBox = class(Forms.TScrollBox)
private
procedure WMNCCalcSize(var Msg: TMessage); message WM_NCCALCSIZE;
end;
//cut
implementation
{$R *.dfm}
procedure TScrollBox.WMNCCalcSize(var Msg: TMessage);
begin
inherited;
Windows.ShowScrollBar(Handle, SB_BOTH, False);
end;
Anonimowy użytkownik napisał(a):
Z tego co tam było NIC kompletnie nie rozumiem, szukam wyjaśnienia "krok po kroku" co zrobić (nie jestem aż taki mega doświadczony w programowaniu, jakby co to używam Delphi 5)
Ale rozumiem język angielski więc jak coś takiego jest na internecie to bym zrozumiał tylko że wszędzie jest tylko pokazane jak to ma wyglądać a nie jak to zrobić
Jeżeli nie umiesz zrobić kopiuj - wklej i podmienić nazwy komponentu na Twój ScrollBox. To ja nie jestem rôwnież w stanie pomóc. Mając takie "problemy", kodu od kAzka też nie zastosujesz sam.
kAzek, gdzie ten Twój kod mam wkleić?
OK już wiem chyba gdzie zgłoszę się tylko jak coś pójdzie nie tak
No i kit bo nie działa
Mogę to sprawdzić dopiero po południu. Jednak kAzek jest doświadczonym Użytkownikiem. I nie wklejałby raczej niesprawdzonego kodu.
EDIT: rozwiązanie, które podał @kAzek zatwierdzam, ponieważ działa bez problemów pod Delphi 7. Sprawdziłem.
A pod Delphi 5? Mówiłem że mam Delphi 5 a nie 7!!!
Dawno nie pisałem 5 ale nie widzę powodu dla którego by to nie miało działać w tej archaicznej wersji środowiska. Być może coś źle powklejałeś pokaż kod.
Znajomy który się zna na programowaniu pokazał mi genialną i banalnie łatwą metodę która najwyraźniej i was zadziwi. Otóż:
kliknij na scrollboxa na formie żeby go zaznaczyć, i w okienku Object Inspector ustaw AutoScroll na False i spróbuj znaleźć paski do przewijania, w życiu ich nie znajdziesz jeśli AutoScroll będzie ustawione na False! (przetestowane na Delphi 5, nie wiem jak na innych wersjach, więc wy sprawdźcie na innych wersjach Delphi, OK?)
Faktycznie odkrywcze - trzeba było od razu zaglądnąć do okna IO i pobawić się właściwościami... :]
A sprawdzał już ktoś czy działa na innych wersjach delphi?
Chodzi mi o to żeby inni ludzie się nie frustrowali jak zobaczą że AutoScroll nic nie robi na ich kompie na którym mają inne Delphi niż piątkę