Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem StringGrid Delphi

Zdravim.
Na tento komponent koukam poprve.
Tabulka, to bych pochopil, ale ta bila oblast ????
Marně hledam jak to nastavit aby se ta bila oblast přilepila automaticky k tabulce.
Mam třeba tabulku hor.7 buněk a vert.12 buněk
Spočitat a nastavit to dovede i blb, ale jak zjistim kolik ma SrollBars.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Nepotrebujes vedet, kolik ma scrollbar. Nastavis si pocet Rows a Colls a podle toho bude nastavena i…
Jan Fiala 23.10.2011 21:30
Jan Fiala
Pane Fiala,špatně jste to pochopil. Spiše takto. Jak spočitat horizontalni šiřku pro StringGid.width…
Marek.K 23.10.2011 21:51
Marek.K
Nepouzivej Width - to je sirka cele kompoenty, ale ClientWidth - to je sirka obsahu. Ale stejne, pod…
Jan Fiala 24.10.2011 08:23
Jan Fiala
Hm.Tak po 2 hodinach žadny vysledek. Pokud nenastavím Width ale jen ClientWidth. tak se mi nezobrazi…
Marek.K 25.10.2011 06:03
Marek.K
Hm.Že by se nenašlo žešení. :-/
Marek.K 26.10.2011 05:04
Marek.K
Obvykle se nastavuje na Autosize 1 sloupec. Fakt nechapu, proc tohle resis. jak jsem psal, v kazdem… poslední
Jan Fiala 26.10.2011 07:58
Jan Fiala

Pane Fiala,špatně jste to pochopil.
Spiše takto.
Jak spočitat horizontalni šiřku pro StringGid.width,když neznam šiřku scrollbaru.

Pokud to ve Win 7 připasuji ručně nebo přikazem StringGid.width := 450 a spustim ve Win XP tak je za SrollBarem ještě bila mezera.

Prostě komponent StringGid ma ve win XP užši SrollBar

Nepouzivej Width - to je sirka cele kompoenty, ale ClientWidth - to je sirka obsahu.
Ale stejne, podle mne nema smysl se snazit o to, co chces. Tema ve Windows meni sirku ramecku i sirku scrollbaru. Uzivatel si nastavi vetsi pismo a opet se to projevi i na tvem gridu.

Hm.Tak po 2 hodinach žadny vysledek.
Pokud nenastavím Width ale jen ClientWidth. tak se mi nezobrazi vertikal SrollBars nebo je uplně mimo rozsah.
Prostě ClientWidth vraci šuřku obsahu ale bez SrollBar.
Takto je to OK, když připočtu těch 30 což je SrollBars.
StringGrid1.width:= StringGrid1.ClientWidth + 30;

Ve win XP je však SrollBars užši(ma jen 25)a tedy se za ním uděla tenka prazdna mezera.

Prostě mam 8 horiz. sloupcu (+ 2 pracovní).

StringGrid1.ColWidths[0] := 20; // ID sloupec
AutoSizeCol(StringGrid1, 1);
AutoSizeCol(StringGrid1, 2);
AutoSizeCol(StringGrid1, 3);
AutoSizeCol(StringGrid1, 4);
AutoSizeCol(StringGrid1, 5);
AutoSizeCol(StringGrid1, 6);
AutoSizeCol(StringGrid1, 7);
StringGrid1.ColWidths[8] := -1;
StringGrid1.ColWidths[9] := -1;

Za nima chci umistit SrollBars a hned za nim Form1.Constraints.MaxWidth

Obvykle se nastavuje na Autosize 1 sloupec.
Fakt nechapu, proc tohle resis. jak jsem psal, v kazdem Windows tematu to bude vypadat jinak. Pokud to odladis pro zakladni XP a Win7, uzivatel si prepne jine tema a mas to zase jinak.
Uzivatel si nastavi jinou velikost pisma a mas to opet jinak.

Zpět do poradny Odpovědět na původní otázku Nahoru