[Delphi] pozbycie się kursora zmiany rozmiaru kolumny w List

0

http://www.swissdelphicenter.ch/torry/showcode.php?id=2133 i to działa elegancko.
Ale chciałbym aby po najechaniu kursorem na pasek rozmiaru przy kolumnie kursor nie
zmieniał się na strzałki (do zmiany rozmiaru) tylko pozostał standardowy. Szukałem już
w google, kombinowałem w Timerze ze Screen.Cursor := crDefault; jednak po tym, jak
najeżdzałem na kolumne kursor i tak się zmienia. Czy i jak można jakoś temu zaradzić?

0

Podmień ikonkę kursora w zasobach na standardową.

0

to usunie ten kursor w całym programie, więc nie jest to najlepsze rozwiązanie.

0

Dzięki Opi za sugestie, ale tego kursora nie widzę w ResHacku w zasobach. Jest on podobny do
crHSplit ale ma pojedyńczą wąską kreskę między dwoma strzałkami poziomymi. Jednak dla testu
podmieniłem go na kursor rączki (crHandPoint), ale po uruchomieniu programu i najechaniu na
linie oddzielającą kolumny nadal jest ten sam kursor, więc jest on raczej w systemie, może ktoś
z Was ma jakieś inne pomysły jak by go podmienić. Najlepiej poprzez kod, żeby nie babrać się
po kompilacji w edycję zasobów tylko w trakcie działania programu podmienić go na np. zwykły.

0

Może spróbuj poszukać w źródłach samego komponentu?

0

Używam Delphi 7 Personal i z tego co widzę nie ma żadnych źródeł do komponentu ListView do instalacji.

0

a zrob sobie zmienna typu TListView, przytrzymaj ctrl i kliknij napis TListView, powinna Ci sie otworzyc nowa karta, na której zaznaczona będzie klasa TListView.

0

Nic takiego się nie dzieje dałem var Cosik : TListView; i zaznaczyłem TListView, kliknąłem na napis
TListView trzymając wciśnięty Ctrl i nic to nie dało. Jesteś pewny że pod Delphi 7 Perosnal to działa?

0

hmm, dziwne, a sprobuj to samo zrobic np na typie TStringList, jesli zadziala, znaczy ze jednak nie dali zrodel tego komponentu, wtedy mozesz uzyc jego odpowiednika z JVCL (Jedi Visual Code Library)

pozdrawiam

0

Również to nic nie dało. A kombinowałem jeszcze z ListView i dawałem wyświetlanie na Form.Caption
pozycji kursora w zdarzeniu OnMouseMove dla ListView i co się okazuje, kiedy poruszamy kursorem
nad belką z nazwami kolumn, zdarzenie nie zachodzi. Czyli tak belka to jakiś Panel albo coś w tym
stylu tworzone dynamicznie na ListViewie. Przeglądałem pobieżnie źrodła modułu Comctrls dołączone
do Delphi 3 - Professional, ale nie widze tam nigdzie ustawiania kursora dla belki kolumn ListView'a.
A skoro nie da się nic zaradzić, to daruje sobie kombinowanie, niech ten kursor będzie skoro musi ;/

0

ale do odpowiednika z JVCL dostaniesz pelne zrodla, wiec mozesz odnalezc konkretna linijke kodu i usunac ja, tylko jest troche zabawy z szukaniem.

ciekawi mnie dlaczego to nie dziala, a ktory ctrl naciskales? prawy czy lewy? mi to smiga z lewym ctrl + klikniecie (po najechaniu myszki przy trzymaniu lewego ctrl myszka powinna sie zmienic na raczke i napis pod nia powinien zmienic kolor)

0

Oczywiście z lewym Ctrl klikam, nie zmienia się kursor. Może to kwestia np. jakiegoś dodatkowego
wpisu w Rejestrach tak jak dla uzyskania polskich znaków diakrytycznych po wciśnięciu klawiszy z
AltGr albo coś trzeba w opcjach środowiska może ustawić? Mi jedynie kursor zmienia się w strzałkę
z karteczką kiedy najade na jakiś tekst i przytrzymam lewy przycisk myszki - moge przesuwać tekst.

0

U mnie po kliknięciu na Ctrl+LPM pokazuje się okienko:
user image
Moża ta informacja do czegoś Ci się przyda.:) Delphi 2009

0

czyli u ciebie to dziala, tylko nie moze znalezc tego pliku, wiec zapewne nie dali zrodel komponentow

0

Nie ma pliku ComCtrls.pas jest tylko ComCtrls.dcu ;)

0

I nic dziwnego ze u mnie nie działa ten motyw z Controlem. Ze screena wnioskuje że Wy mace Turbo
Delphi CodeGeara, a ja mam jeszcze Delphi 7 - Personal Borlanda, przy którym to wole pozostać :)

0

no ja akurat mam Delphi 7 Personal i mi jakos to dziala, dlaczego Tobie nie to nie wiem

0

nie szukajcie tej ikony. ona jest gdzieś w zasobach windowsa (może comctl32.dll?). komponent nie jest napisany w delphi tylko wprowadzany z comctl32.dll (zbiór Common Controls), więc nic nie zmienicie.

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