Hej igen,
Design time er ikke mit problem nej. Jeg snakker kun run-time.
Problemet var at efter jeg havde sat DBGrid = en ny tabel ville den ikke
update ved brug af (repaint, update eller whatever).
Jeg har dog fundet ud af at sætter jeg DBGrid´s datasource i
object-inspektoren til en tabel i starten , så kan jeg skifte tabeller under
run-time og den updateres selv (troede der skulle repaint el...... til ).
Så man kan sige problemet er løst.
Tilbage står jeg med en irriteret føelse over at have en if struktur, med en
lang udførende linien under hver betingelse, fremfor at det lige blev smidt
i en variabel og til sidst blev sat lig
altså som:
DBGrid->DataSource = valg; (meget mere enkelt og overskuelig kode).
Her er det jeg har måttet lave (vil nok lave switch, men den er ej så glad
for betingelse - detalje......)
---min nuværende virkbare kode, hvor bruger vælger ønsket tabel til syn i
DBgrid via combobox---
if ((ComboBox->Items->Strings[ComboBox->ItemIndex]) == "tabelA")
{
DBGrid->DataSource = tabelADataSource;
}
else if ((ComboBox->Items->Strings[ComboBox->ItemIndex]) == "tabelB")
{
DBGrid->DataSource = tabelBDataSource;
}
else {
ShowMessage("tabel findes ej");
}
- at gentage DBGrid->DataSource = tabelADataSource; - hver gang syntes jeg
er overkill, det er det jeg hader ved C++, I VB er der ikke så mange
restriktioner over sådan noget.... Ok C++ er sproget hvor man kan alt, og
hver dag lærer man mere af dette store mastersprog...suk..
/Erik
"B" <na@na.net> wrote in message news:ar2oql$cj8$1@sunsite.dk...
> "Erik" <kire100@ofir.dk> skrev i en meddelelse
> news:3dd4c3fe$0$784$ba624c82@nntp03.dk.telia.net...
> >
> > hmmm. mit sidste svar kom vist aldrig, jeg syntes ikke rigtig jeg styrer
> > noget p.t., men det var også lige meget, dukker det frem, undskylder jeg
> > hvis jeg spilder folks tid.
> >
> > Uanset hvad, jeg skal ikke tage andres tid med mere om dette emne, for
jeg
> > tror faktisk at det der med at sætte datasource = variabel er en fejl, i
> > stedet skal jeg jo sætte det = med det komponent der kalder den tabel
jeg
> > skal bruge, det er jo det med de komponenter som du har snakket om og
som
> > jeg burde have tænkt på og det er skam også sådan jeg har sat det op.
> >
> > Jeg tror det kører jeg kan bare ikke få nogle af DB-kontrollerne til at
> > updatere sig efter udførelsen af min kode og uden updatering kan det jo
> være
> > lige meget, for så kan jeg ej se om det virker. Her er jeg totalt i
> blinde,
> > for når
> >
> > ->Repaint()
> > ->Refresh()
> > ->Update()
> >
> > (muligvis forkert skrevet oven over, men de er ok, de vælges jo blot)
> >
> > ovenstående ej virker, hvad i alverden skal man så gøre og så er det
vist
> > slut med det emne
.
> >
> > mvh.
> >
> > jens
>
>
> Hej
>
> Jeg giver dig ret i at det kan være tricky.
>
> Hvis jeg forstår dig ret, så kan du ikke se data i f.eks. din
> DBGrid-komponent når du er i design-mode (udvikler på projektet) - og det
> vil du gerne?.
> Har du set efter om dine database-komponenter er sat til active.
Propertien
> Active skal være = true i din Object Inspector ved de forskellige
> komponenter.
> Så kan du se data fra databasen i dine komponenter i design-mode.
>
> Det med datasource = variabel holder nemlig ikke - det har du ret i. Som
jeg
> skrev igår skal du kigge på enten din Table- eller Database-komponent når
du
> vil ændre i runtime-mode.
>
> Jeg kan fortælle dig at jeg har kun kigget på databaser i BCB i 4 uger -
de
> to første uger gik med at finde udaf hvordan BDE, Database, Tables,
> Datasources osv. osv. skulle hænge sammen.
> Når man har fat i den røde tråd går det hurtigt med alt det andet. Jeg må
> indrømme at databasetilgang i BCB er utroligt hurtigt og let.
>
> /B
>
>
>