Приложение пишу на Windows 7 - вопросов нет. Попробовал посмотреть как оно будет работать на XP. На виртуальную машину (VMware) с XP SP 3 переношу приложение и сталкиваюсь с неверным отображением символа (стрелка в заголовке DBGrid'a).
Windows 7: http://s1.ipicture.ru/
Windows XP: http://s1.ipicture.ru/
Delphi XE2. Настройки DBGrid'a: http://s1.ipicture.ru/
Вот код вывода стрелки:
| Код | procedure DrawGridTitle(Column: TColumn; ARect: TRect); //закрашивает заголовок колонки Column и поверх пишет текст var title: string; begin
SetRect(ARect, ARect.Left, 0, ARect.Right, ARect.Bottom);
InflateRect(ARect, -2, -2); { Поправка на окантовку Titles } with form1.DBGrid1.Canvas do begin if Column.Index=order_n then begin //если сортируем по этой колонке то: if updown then title:='↓' else title:='↑'; //рисуем стрелку Column.Title.Font.Style:=[fsBold];//делаем название колонки жирным шрифтом end;
title:=title+Column.Title.Caption;
if filteredColumn(Column.Title.Caption) then title:=title+' *';
DrawText(Handle, PChar(title), -1, ARect, DT_LEFT) end; end;
|
Как это исправить? Спасибо.
|