![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как в DBGrid отобразить значения поля типа ftBytes? [D6, Sybase]
Tovarish Pronin © (2004-12-28 12:24:00)При отображении таблици в которой есть поле типа ftBytes, в DBGrid отображается только слово Bytes. Как с эти бороться. Знаю что нужно в обработчике события OnGetText данного поля написать обработчик данных типа bytes, но что конкретно писать не знаю. HELP!
Tovarish Pronin (2004-12-28 14:33:00) [1]Большое спасибо.
Хотя результат не изменился. Во всех ячейках по старому только 0x, но я думаю, это потому что они пустые!
Спасибо!
Соловьев (2004-12-28 13:44:00) [2]Ну и тут конечно:
Text:= '0x'+LScriptBodyHex;
Соловьев (2004-12-28 13:43:00) [3]Поскажите что не так я сделал!
Не подумал головой...
procedure TForm1.Query1xactidGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
var LScriptBody,LScriptBodyHex: string;
begin
LScriptBody := Text;
SetLength(LScriptBodyHex, Length(LScriptBody) * 2);
BinToHex(PChar(LScriptBody), PChar(LScriptBodyHex), Length(LScriptBody));
result:= '0x'+LScriptBodyHex;
end;
Tovarish Pronin (2004-12-28 13:37:00) [4]Ничего не вышло, вот что я сделал:
procedure TForm1.Query1xactidGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
var LScriptBody,LScriptBodyHex,TheData: string;
begin
LScriptBody := TheData;
SetLength(LScriptBodyHex, Length(LScriptBody) * 2);
BinToHex(PChar(LScriptBody), PChar(LScriptBodyHex), Length(LScriptBody));
result:= '0x'+LScriptBodyHex;
end;
где xactid, то самое поле которое типа ftBytes.
В результате вместо слова butes во всех ячейках поля стало написано 0x. Кстати на result, вообще рыгнулось, я исправил на text. Хотя думаю судя по коду нужно куда-то в другое место это вставлять. Поскажите что не так я сделал!
Соловьев (2004-12-28 12:34:00) [5]вот писал когда-то:
var LScriptBody,LScriptBodyHex,TheData: string;
...
LScriptBody := TheData;
SetLength(LScriptBodyHex, Length(LScriptBody) * 2);
BinToHex(PChar(LScriptBody), PChar(LScriptBodyHex), Length(LScriptBody));
Result:= '0x'+LScriptBodyHex;
...