Ukrywanie pasków na scrollboxie

0

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.

0

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ć.

0

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ć

1

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;
0
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.

0

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

0

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.

0

A pod Delphi 5? Mówiłem że mam Delphi 5 a nie 7!!!

0

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.

0

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?)

0

Faktycznie odkrywcze - trzeba było od razu zaglądnąć do okna IO i pobawić się właściwościami... :]

0

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ę

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