Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

DBGrid, sirina kolona

[es] :: C++ programiranje :: DBGrid, sirina kolona

[ Pregleda: 991 | Odgovora: 10 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Mr. Rejn
Deki Karamatijević
Srbija.Niš.MedianaCity

Član broj: 2514
Poruke: 407
*.adsl.sezampro.yu.



Profil

icon DBGrid, sirina kolona27.07.2006. u 10:12

Kako se moze programski izvrsiti zbijanje kolona u DBGridu tako da sirina kolone odgovara duzini zapisa,
kako se ne bi nekontrolosano sirile u tabeli? Radi se u BCB6.
"I prefer the term:artificial person..."-Bishop the android,Alien 2
27.07.2006. u 10:12 

itf
Zagreb

Član broj: 59794
Poruke: 778
161.53.55.*

ICQ: 337738018


Profil

icon Re: DBGrid, sirina kolona27.07.2006. u 11:23
Pokušaj ovo za svaki stupac,
Code:
DBGrid1->Columns[0].RebuildColumns();

...iako se meni to i ne sviđa jer uvijek stavljam sve fiksne dužine. Ako mi baš to treba onda u DBGridu koristim font Courier jer su svi znakovi jednake duljine pa po formuli izračunam duljinu stupca u ovisnosti o broju znakova koji se prikazuje u koloni..
27.07.2006. u 11:23 

IDE

Član broj: 53403
Poruke: 564
*.crnagora.net.



Profil

icon Re: DBGrid, sirina kolona29.07.2006. u 17:38
Citat:
DBGrid1->Columns[0].RebuildColumns();


meni ovo ne radi... ??

ima li neki drugi, elegantniji, nacin (koji radi ;-) )
there's something out there
waiting for us,
and it ain't no man...
29.07.2006. u 17:38 

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 3395
*.nat-pool.po.sbb.co.yu.

Jabber: xfiles@elitesecurity.org
Sajt: www.antivari.com


Profil

icon Re: DBGrid, sirina kolona29.07.2006. u 18:16
Nisam isprobao, ali medota TCanvas::TextWidth() bi trebala da pomogne.

Canvas->TextWidth( "neki tekst" ) bi trebalo da vrati duzinu stringa "neki tekst" u pixelima,
pa onda kolonu DBGrida u kome se nalazi tekst treba povecati na tu vrednost.

Na primer:

DBGrid1->Columns->Items[0]->Width = Canvas->TextWidth( DBGrid1->Columns->Items[0]->AsString ) + 2;

Mada ja licno nikada ne racunam najduzi tekst kolone, nego sirinu postavim na neke logicne vrednosti.

FREEWARE
Di rečnik, v1.0.058 (srp-eng/eng-srp priručni rečnik)
http://www.antivari.com
29.07.2006. u 18:16 

Mr. Rejn
Deki Karamatijević
Srbija.Niš.MedianaCity

Član broj: 2514
Poruke: 407
*.adsl.sezampro.yu.



Profil

icon Re: DBGrid, sirina kolona31.07.2006. u 11:48
Dobro, mislim da cu se zadovoljiti fiksiranjem sirine kolona,npr.:
Code:

int br_kolona = DBGrid1->Columns->Count;
for (int i=0;i<br_kolona;i++) {
  DBGrid1->Columns->Items[i]->Width = 85;
        }



"I prefer the term:artificial person..."-Bishop the android,Alien 2
31.07.2006. u 11:48 

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 3395
*.nat-pool.po.sbb.co.yu.

Jabber: xfiles@elitesecurity.org
Sajt: www.antivari.com


Profil

icon Re: DBGrid, sirina kolona31.07.2006. u 17:38
Pored nacina koji i sam koristis:

DBGrid->Columns->Items[0]->Width = NEKA_VREDNOST_U_PIXELIMA;

Probaj i ovo:

DBGrid->Fields[0]->DisplayWidth = NEKA_VREDNOST_ALI_U_KARAKTERIMA;

(Nisam siguran, ali ovaj drugi bi valjda trebao da uzme u obzir i font da bi odredio sirinu. Najbolje isprobaj)

FREEWARE
Di rečnik, v1.0.058 (srp-eng/eng-srp priručni rečnik)
http://www.antivari.com
31.07.2006. u 17:38 

IDE

Član broj: 53403
Poruke: 564
*.crnagora.net.



Profil

icon Re: DBGrid, sirina kolona31.07.2006. u 21:52
nije lose ni ovako:
Code:

for(int i=0;i<DBGrid1->FieldCount;i++)
DBGrid->Columns->Items[i]->Width=DBGrid1->Width/(DBGrid1->FieldCount+1)


Ovako radim kada zelim da mi sva polja stanu u DBGrid1 bez obzira koliko su siroka...
there's something out there
waiting for us,
and it ain't no man...
31.07.2006. u 21:52 

miki78ns
Novi Sad

Član broj: 161690
Poruke: 60
*.ptt.rs.



Profil

icon Re: DBGrid, sirina kolona24.05.2009. u 16:50
Probao sam oba nacina kao sto objasnjava 'X Files' i to je tako dok ne pokrenem aplikaciju onda opet se sve razvuce i bude puno siroko, koristim Access bazu pomocu ADO komponenti.
24.05.2009. u 16:50 

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 3395
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org
Sajt: www.antivari.com


Profil

icon Re: DBGrid, sirina kolona24.05.2009. u 17:04
Gde si stavio kod za Resize kolona u TDBGridu?

Ako se radi o nekom dinamickom upitu, najbolje promenu sirine kolona (kod koji imas) stavi neposredno nakon upita.

Ako je broj kolona uvek isti, to mozes definisati i kroz Object inspector, bez koda.

FREEWARE
Di rečnik, v1.0.058 (srp-eng/eng-srp priručni rečnik)
http://www.antivari.com
24.05.2009. u 17:04 

miki78ns
Novi Sad

Član broj: 161690
Poruke: 60
*.ptt.rs.



Profil

icon Re: DBGrid, sirina kolona24.05.2009. u 22:06
sve podesavam u object inspector, uspeo sam izgleda da je fora bila da DBGrid rasirim vertikalno vise tako da mi se nepojavljuje dole onaj klizac za pomeranje. ne moze biti samo to verovatnio sam jos nesto cackao, jer pre se desavalo imam 8 kolona sve stavim 70 sirinu, snimim sve, pokrenem aplikaicju pa ugasim kad ono nekoliko kolona opet se vratilo na sirinu 300.
24.05.2009. u 22:06 

bventil
desp

Član broj: 67391
Poruke: 38
79.101.216.*

Sajt: www.geocities.com/bope999


Profil

icon Re: DBGrid, sirina kolona26.05.2009. u 14:27
Evo sta ja radim. Nije elegantno ali radi.
U dizajn modu postavi table-active na true, postavi sve sirine kolona kako zelis, vrati active na false i to je to.(ako umesto connstringa koristis ADOconnection postavi i njemu active na true)
26.05.2009. u 14:27 

[es] :: C++ programiranje :: DBGrid, sirina kolona

[ Pregleda: 991 | Odgovora: 10 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.