Форум: "Основная";
Текущий архив: 2007.02.11;
Скачать: [xml.tar.bz2];
ВнизКак запретить рисовать окантовку, в DBGridEh Найти похожие ветки
← →
DelphiLexx © (2006-12-18 13:39) [0]Как запретить рисовать окантовку, в DBGridEh"e.
var
lRect: TRect;
begin
with TDBGridEh(Sender), TDBGridEh(Sender).Canvas do
begin
if (Column = Columns[1]) or (Column = Columns[2]) or
(Column = Columns[3]) or (Column = Columns[4]) then
begin
Brush.Color := $00FFF0F0;
lRect := Rect;
if Column <> Columns[4] then
lRect.Right := lRect.Right + 1;
FillRect(lRect);
DefaultDrawColumnCell(lRect, DataCol, Column, State);
end
else
inherited;
end;
end.
Результаты данного кода см. рисунок.
http://www.rsdn.ru:80/File/26841/pic.JPG
← →
ЮЮ © (2006-12-19 03:11) [1]не использовать DefaultDrawColumnCell, где, по-моему, она и рисуется, а нарисовать ячйку самому.
Какой inherited в обработчике?
← →
Германн © (2006-12-19 03:18) [2]Что-то зачастили тут вопросы про библиотеку Д.Большакова.
Не пора ли ему сделать её платной для всех? :-)
← →
ЮЮ © (2006-12-19 03:32) [3]Хотя нет, в стандартном TDBGrid это рисуется в
procedure TCustomDBGrid.DrawCell(ACol, ARow: Longint; ARect: TRect; AState: TGridDrawState);
...
if FDefaultDrawing and (gdSelected in AState)
and ((dgAlwaysShowSelection in Options) or Focused)
and not (csDesigning in ComponentState)
and not (dgRowSelect in Options)
and (UpdateLock = 0)
and (ValidParentForm(Self).ActiveControl = Self) then
Windows.DrawFocusRect(Handle, ARect);
end;
Смотри, где это рисуется в TDBGridEh и, исходя из этого, ищи методы обхода.
В стандартном при включенном DefaultDrawing - похоже, никак, если не установлен dgRowSelect
← →
Polevi © (2006-12-19 08:18) [4]попробуй ее затирать, DrawFocusRect
← →
DelphiLexx © (2006-12-19 11:02) [5]
> попробуй ее затирать, DrawFocusRect
Спасибо. Помогло.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2007.02.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c