Jan, I see that maybe I should explain the previous code more detailed.
First, we know that there is a field object. I see that you didn't use persistent field, but nevertheless you can use DataSet's FieldByName function to get the field object, so you can access it by:
(Note that here I'll assume that your dataset is named "Query1" and the column in the underlying dataset is named "Vluchtduur", of course you should change these to what they actually are)
Query1.FieldByName('Vluchtduur');
You can access the field's value by its "AsDateTime" property. That is you can use
var
F: TField;
strVluchtduur: String;
...
F := Query1.FieldByName('Vluchtduur');
strVluchtduur := TimeToStr(F.AsDateTime);
or simpler (without declaring the TField variable explicitelly):
strVluchtduur := TimeToStr(Query1.FieldByName('Vluchtduur').AsDateTime);
Okay? You can see that you didn't need to use the DBZVDateTimeControl for this.
In my previous post, as I don't know the actual name of your Query component, I used what must work -- DB_Vluchtduur.DataSource.DataSet and you can use it (as you said, the DB_Vluchtduur is tied to a DataSource and it is tied to DataSet, so it must work).
Also, I don't know what the literal name of the underlying column is, but I can use DB_Vluchtduur.DataField, because you surely did set that property, otherwise the control wouldn't work.
That is how I came to the code from my previous post:
strVluchtduur := TimeToStr(DB_Vluchtduur.DataSource.DataSet.FieldByName(DB_Vluchtduur.DataField).AsDateTime);
Apart from this, if you are interesting in using persistent field objects, I found these links which can help:
http://www.podgoretsky.com/ftp/docs/Delphi/D5/dg/7_fields.html http://flylib.com/books/en/2.37.1.139/1/