Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.03.07;
Скачать: CL | DM;

Вниз

TKOLmdvXLGrid   Найти похожие ветки 

 
Elec3C ©   (2008-06-08 23:33) [0]

Пару вопрос по String : TKOLmdvXLGrid:

1. Как убрать Scroll Bar"ы (в unit"e KOLmdvXLGrid читал, что есть такой ScrollBars - Вкл/Выкл полосы прокрутки, но в самом TKOLmdvXLGrid и близко нету ничего похожего)?

2. Возможно в реалтайме убрать фокус с StringGrid"a (чтобы внутри ячейки не отрисовывался квадрат со штриховыми линиями)?


 
Elec3C ©   (2008-06-10 04:19) [1]

^


 
mdw ©   (2008-06-10 16:01) [2]


> 1. Как убрать Scroll Bar"ы (в unit"e KOLmdvXLGrid читал,
>  что есть такой ScrollBars - Вкл/Выкл полосы прокрутки,
> но в самом TKOLmdvXLGrid и близко нету ничего похожего)?

Нда, и правда. Убрать можно. Примерно так:

procedure TmdvXLGrid.UpdateScrollBars;
var ScrollInfo: TScrollInfo;
begin            
   EndEdit(True, True);
   if not HandleAllocated then Exit;
   ScrollInfo.nMin:= 0;
   ScrollInfo.nMax:= 0;//PKolXLGridData(FCustomObj).FRowCount-1;
   ScrollInfo.nPos:= PKolXLGridData(FCustomObj).FTopRow;
   ScrollInfo.nPage:= VisibleRowCount;
   ScrollInfo.fMask:= SIF_ALL;
   ScrollInfo.cbSize:= SizeOf(ScrollInfo);
   SetScrollInfo(Handle, SB_VERT, ScrollInfo, True);

   ScrollInfo.nMin:= 0;
   ScrollInfo.nMax:= 0;//PKolXLGridData(FCustomObj).FColCount-1;
   ScrollInfo.nPos:= PKolXLGridData(FCustomObj).FLeftCol;
   ScrollInfo.nPage:= VisibleColCount;
   ScrollInfo.fMask:= SIF_ALL;
   ScrollInfo.cbSize:= SizeOf(ScrollInfo);
   SetScrollInfo(Handle, SB_HORZ, ScrollInfo, True);
end;

Можете добавить свойство (например IsHorzScrollBar, IsVertScrollBar), если есть желание. Тогда присылайте добавим.


 
mdw ©   (2008-06-10 16:04) [3]


> 2. Возможно в реалтайме убрать фокус с StringGrid"a (чтобы
> внутри ячейки не отрисовывался квадрат со штриховыми линиями)?



Примерно так:

procedure TmdvXLCell.Draw(ARect: TRect; ACol, ARow: Integer; ACanvas: PCanvas; ASelect, AFocus: Boolean);
....
   ///if (PKolXLGridData(Grid.FCustomObj).FGridStyle = gsStandard) and AFocus then ACanvas.DrawFocusRect(ARect);
....

Можете добавить свойство (например IsShowFocus), если есть желание. Тогда присылайте добавим.


 
Elec3C ©   (2008-06-10 17:08) [4]

Спасибо!

> Можете добавить свойство

Сейчас занят, может, чуть позже добавлю и пришлю.


 
Elec3C ©   (2008-06-10 18:02) [5]

Кстати, для "не отрисовки"


 
Elec3C ©   (2008-06-10 18:04) [6]

Сорри, глюкануло!

Для "не отрисовки"

> внутри ячейки не отрисовывался квадрат со штриховыми линиями)

нужно убирать полность

if (PKolXLGridData(Grid.FCustomObj).FGridStyle = gsStandard) and AFocus then ACanvas.DrawFocusRect(ARect);

Если же оставить ACanvas.DrawFocusRect(ARect), то фокус будет отрисовываться во всех ячейках!!!


 
mdw ©   (2008-06-11 16:43) [7]


> нужно убирать полность if (PKolXLGridData(Grid.FCustomObj).
> FGridStyle = gsStandard) and AFocus then ACanvas.DrawFocusRect(ARect);
> Если же оставить ACanvas.DrawFocusRect(ARect), то фокус
> будет отрисовываться во всех ячейках!!!

А я что написал? Окошко раздвиньте. Или монитор 640х480? :)



Страницы: 1 вся ветка

Текущий архив: 2010.03.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
2-1262892262
Sunktor
2010-01-07 22:24
2010.03.07
Как поменять ImageList для кнопки при наведении курсора и нажатии


15-1261321920
asail
2009-12-20 18:12
2010.03.07
Нужен совет по приобретению. нетбука...


2-1262766605
Pavel
2010-01-06 11:30
2010.03.07
Расположекние PaintBox на переднем плане


2-1262118378
Pavel
2009-12-29 23:26
2010.03.07
Ошибка при вызове GetInetFile


15-1261561398
vv_fran
2009-12-23 12:43
2010.03.07
Нагрузка на проц от Delphi 7 в Win2003 Server