[Borland/C++] Probleem met plaatjes in database

Pagina: 1
Acties:

  • hneel
  • Registratie: Maart 2001
  • Laatst online: 13:28

hneel

denkt er het zijne van

Topicstarter
Ik heb een database in Paradox. Een van de velden is een plaatje (type ftGraphic).

Nu begint de database nogal in omvang toe te nemen, en ik vermoed dat dat komt omdat er te grote plaatjes in zitten. Nu zou ik dus graag de omvang van die plaatjes willen opvragen.

Volgens de helpfile kan dat met de property 'Size' van TField.
The interpretation of Size depends on the data type. The meaning of Size for different data types is given in the following table:
...
tGraphic Size is the number of bytes from the image that are stored in the record buffer.
Goed, ik heb dus even het volgende geschreven:

C++:
1
2
3
4
5
void __fastcall TFormEditComponents::Button2Click(TObject *Sender)
{
  int val = TableComponents->FieldByName("Picture")->Size;
  Edit1->Text = val;
}


Maar val is altijd 0. Wat gaat hier fout?

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 01-12 21:29

Tomatoman

Fulltime prutser

Als het een TGraphicField is, probeer dan de BlobSize property eens in plaats van Size.
BlobSize (public) Indicates the number of bytes of data contained in the blob field on the current record.

Een goede grap mag vrienden kosten.


  • hneel
  • Registratie: Maart 2001
  • Laatst online: 13:28

hneel

denkt er het zijne van

Topicstarter
Het werkt. Bedankt!

C++:
1
2
3
4
5
6
void __fastcall TFormEditComponents::Button2Click(TObject *Sender)
{
  TBlobField* veldje = (TBlobField*) TableComponents->FieldByName("Picture");
  int val = veldje->BlobSize;
  Edit1->Text = val;
}