Вниз
Скачать: CL | DM;

Выделение активной строки StringGrid   Найти похожие ветки 

 
viola   (2005-02-04 12:56) [0]

Привет ребята!
У меня такой вопрос:
Как мне при нажатии управляющих клавиш(Up,Down)-менялась позиция выделенного элемента stringGrid-a, собственно вся сложность заключается в том, что при перемещении активная ячейка выделялась другим цветом?
Пожалуйста, если есть приведите код!
Заранее благодарна!


 
_vox_   (2005-02-04 14:01) [1]

Пишешь в событие OnDrawCell:

if (ACol = Grid.Col) and (ARow = Grid.Row) then
 begin
   Grid.Canvas.Brush.Color := clRed; // Ставишь нужный цвет
   Grid.Canvas.FillRect(Rect);
   Grid.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, Grid.Cells[ACol, ARow]);
 end


 
viola   (2005-02-04 14:39) [2]

Спасибо оно работает!
Но, а вот как при OnShow формы, устанавливать позицию на первую строчку и закрасить ее?


 
Александр Иванов ©   (2005-02-04 14:49) [3]

viola   (04.02.05 14:39) [2]
То же самое, но без условия, и колонку и строку присвоить нужную.


 
_vox_   (2005-02-04 14:53) [4]

1. ставишь в инспекторе Grid.Options.goRowSelect в True
2. Чуть-чуть меняешь OnDrawCell на

if ARow = Grid.Row then
begin
  Grid.Canvas.Brush.Color := clRed; // Ставишь нужный цвет
  Grid.Canvas.FillRect(Rect);
  Grid.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, Grid.Cells[ACol, ARow]);
end
3. В OnShow пишешь Grid.Row := < номер первой строки >
4. Покупаешь толстую книгу по Delphi и читаешь, читаешь, читаешь...



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
3-1106481586
Руслана
2005-01-23 14:59
2005.02.20
Подскажите по сортировке


6-1102409409
ocean
2004-12-07 11:50
2005.02.20
TSocketConnection error on API "connect"


1-1107116061
newid
2005-01-30 23:14
2005.02.20
помогите сделать временную копию объекта


4-1105019957
microprogs
2005-01-06 16:59
2005.02.20
Процедура - прерывание... (Как в ДОСе)


1-1107489800
Артем К.
2005-02-04 07:03
2005.02.20
Как отловить в Design-тайме сообщение типа CM_MOUSELEAVE?




   Наверх