StringGrid, zaznaczone komórki

0

Witam.
Mam pytanie: jak pobrać ilość zaznaczonych kolumn i wierszy ze StringGrid'a? :-|
pozdrawiam, bht :D

0

Musiałbyś je zliczać w zdarzeniu OnDrawCell lub sprawdzić czy wystarczy onSelectCell - zależy co i jak chcesz zliczać.
Zapoznaj się z obydwoma zdarzeniami:
OnDrawCell jest wywoływany przy malowaniu i ma znacznik czy cela jest zaznaczona (state na gdSelected o ile dobrze pamiętam - łatwe do sprawdzenia)- bardzo pewny ale trzeba ostrożnie go obsługiwać - np sprawdzac i odznaczać których wierszy i kolumn komórki sa zaznaczone.
OnSelectCell - wywoływany przy zaznaczeniu-wybraniu komórki, ale nie sprawdza się do końca bo nie pokazuje "niebieskich" komórek z ekranu. Można za to ąłtwo obłśużyć wciśnięcie myszy i strzałek tak by wiedzieć że zacżeto i skończono zaznaczanie. Trochę kłopotu ze zgraniem wszystkiego ale będzie działać.

Obydwie metody wymagają "posiłkowania się" dodatkowymi zmiennymi bądź listami. Bezpośrednio nie da się odczytać.

0

BIG thx!
Wystarczyło dać pod onDrawCell kod

Label2.Caption:=IntToStr(ARow);
Label4.Caption:=IntToStr(ACol);

i gra ;)

pozdrawiam

0
bht napisał(a)

BIG thx!
Wystarczyło dać pod onDrawCell kod

Label2.Caption:=IntToStr(ARow);
Label4.Caption:=IntToStr(ACol);

i gra ;)

pozdrawiam

Szkoda, że są to numery aktualnie rysowanego wiersza i kolumny ...

0
bht napisał(a)

BIG thx!
Wystarczyło dać pod onDrawCell kod

Label2.Caption:=IntToStr(ARow);
Label4.Caption:=IntToStr(ACol);

i gra ;)

pozdrawiam

niemożliwe, przecież to numer kolumny i wiersza aktualnie malowanego :-|
[EDIT]
MisiekD :)

0

Tylko aktualnei malowany to nie to samo co zaznaczony. Co więcej możesz zaznaczać wierszami, albo komórkami. I nie zawsze każda zaznaczona komórka była wcześniej wybrana - czyli wystąpiło OnSelectCell...
Posprawdzaj zanim zaczniesz się kłocić po tym jak napisałeś głupoty

0

W każdym razie otrzymałem efekt, o jaki mi chodziło ;P. A że rozwiązanie nie jest idealne to trudno ;P

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