Obszar roboczy w StringGrid

dział ogólny

Obszar roboczy w StringGrid

Nowy postprzez mckri » Å›roda, 27 sierpnia 2008, 19:27

Witam.
Szukałem na tym forum, jednak nie znalazłem odp. na nurtujący mnie problem.
Otóż mam tabelkę StringGrid na formularzu, która zawiera 100 wierszy i 100 kolumn. Przesuwając suwaki pionowe i poziome mam do dyspozycji jakiś obszar. Czy można dojść jaki obszar widzę (zakres kolumn i wierszy)?
Piszę program, który wstawia pole edycji do komórki nagłówka kolumny ustawionej na Fixed (FixedRows=1).
Poprzez wybór nagłówka kolumny dostaje informację jaka to kolumna i wstwiam nakładkę pola edycji w to miejsce (w ten sposób user może modyfikować nazwy kolumn). Przy przejściu suwakami scrolla do dalszego obszaru obiektu StringGrid (np. 20 kolumna) pole edycji wychodzi mi już poza obszar obiektu StringGrid.

Kod: Zaznacz cały
void __fastcall TForm1::Sg1MouseDown(TObject *Sender, TMouseButton Button,
      TShiftState Shift, int X, int Y)
{
TGridCoord mCoord = Sg1->MouseCoord(X, Y);
EditCol = mCoord.X;

int left=0;
for(int i=0;i<EditCol;i++)
{
  left+=Sg1->ColWidths[i]+1;
}

Edit1->Left=left+4;
Edit1->Width=Sg1->ColWidths[EditCol]-4;
}


ProszÄ™ o info.
Avatar użytkownika
mckri
Intelektryk
Intelektryk
 
Posty: 160
Dołączył(a): piątek, 15 sierpnia 2008, 13:48
PodziÄ™kowaÅ‚ : 10
OtrzymaÅ‚ podziÄ™kowaÅ„: 2
System operacyjny: Windows Vista SP2
Kompilator: BCB 5/2007/2009
    NieznanyNieznana

Re: Obszar roboczy w StringGrid

Nowy postprzez Cyfrowy Baron » Å›roda, 27 sierpnia 2008, 20:01

Źle się do tego zabierasz. Myślę, że rozwiązaniem będzie dla Ciebie porada zamieszczona w serwisie Cyfrowy Baron w dziale: porady | StringGrid | Wstawianie obiektu ComboBox do obiektu StringGrid.
Zamienisz sobie ComboBox na Edit i ograniczysz możliwość wywoływania pola edycji tylko w komórkach nagłówka i masz gotowe rozwiązanie.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana


Powrót do Ogólne problemy z programowaniem

Kto przeglÄ…da forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 18 gości

cron