Главная страница
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.012 c
1-1238695413
DimaK
2009-04-02 22:03
2010.03.07
Построение Отчета Fastreport


2-1261834445
Токи
2009-12-26 16:34
2010.03.07
Проблема с БД на парадоксе


2-1262820949
helluvaname
2010-01-07 02:35
2010.03.07
ошибка INSERT INTO


15-1260399563
wl
2009-12-10 01:59
2010.03.07
Линукс - зачем?


15-1261400337
@!!ex
2009-12-21 15:58
2010.03.07
Как заставить приложение работать с Кирелическим набором символов