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

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

 
saNat ©   (2004-10-09 02:54) [0]

Подскажите, пожалуйста, как выделить строку в данном компоненте. Ну, например, сделать выделение (bold) шрифта или изменение его цвета?

С уважением...


 
GanibalLector ©   (2004-10-09 03:02) [1]

В DrawCell писать что-то тира

with stringgrid1.Canvas do begin
...
if  gdselected in state then begin
Brush.Color := $cbe08b;
Font.Style:=[fsBold];
FillRect(Rect);
Font.Color := clblack;
...


 
GanibalLector ©   (2004-10-09 03:02) [2]

В DrawCell писать что-то типа

with stringgrid1.Canvas do begin
...
if  gdselected in state then begin
Brush.Color := $cbe08b;
Font.Style:=[fsBold];
FillRect(Rect);
Font.Color := clblack;
...


 
saNat ©   (2004-10-10 01:01) [3]

Виноват... Не так, возможно, выразился.

Предположим, есть StringGrid такого содержания


11/10/2004 - Значение 1
11/10/2004 - Значение 2
11/10/2004 - Значение 3
11/10/2004 - Значение 4
10/10/2004 - Значение 1
10/10/2004 - Значение 2
10/10/2004 - Значение 3
10/10/2004 - Значение 4
09/10/2004 - Значение 1
09/10/2004 - Значение 2
09/10/2004 - Значение 3


Выделить нужно, например, значения за сегодняшнюю дату - 11/10/2004



11/10/2004 - Значение 1
11/10/2004 - Значение 2
11/10/2004 - Значение 3
11/10/2004 - Значение 4

10/10/2004 - Значение 1
10/10/2004 - Значение 2
10/10/2004 - Значение 3
10/10/2004 - Значение 4
09/10/2004 - Значение 1
09/10/2004 - Значение 2
09/10/2004 - Значение 3


С уважением...


 
GanibalLector ©   (2004-10-10 02:02) [4]

Во первых,сегодня 10.10.2004 ,а не 11.
Во вторых,ты начинаешь мне не нравиться!!!То так,то эдак.Определись!!!

Ладно,вот :
Option RowSelect=TRUE

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
with StringGrid1.Canvas do begin
if (Acol<>0) and (Arow<>0)  then begin
if StringGrid1.Cells[1,Arow]=Datetostr(now) then begin
Brush.Color := $cbe08b;
Font.Style:=[fsBold];
FillRect(Rect);
Font.Color := clblack;
if textwidth(Stringgrid1.cells[Acol,Arow])>=Rect.Right-Rect.Left
then textout(rect.left+2 ,Rect.top+4,stringgrid1.Cells[Acol,Arow]) else
textout(rect.left+(rect.right-rect.left -
textwidth(stringgrid1.cells[Acol,Arow])) div 2 ,
Rect.top+4,stringgrid1.Cells[Acol,Arow]);
                                    end else begin
Brush.Color := $b0ffff;
FillRect(Rect);
Font.Color := clblack;
if textwidth(Stringgrid1.cells[Acol,Arow])>=Rect.Right-Rect.Left
then textout(rect.left+2 ,Rect.top+4,stringgrid1.Cells[Acol,Arow]) else
textout(rect.left+(rect.right-rect.left -
textwidth(stringgrid1.cells[Acol,Arow])) div 2 ,
Rect.top+4,stringgrid1.Cells[Acol,Arow]);
                                             end;
                          end
                          else begin
Brush.Color := clbtnface;
FillRect(Rect);
Font.Color := clblack;
textout(rect.left+(rect.right-rect.left -textwidth(stringgrid1.cells[Acol,Arow])) div 2  ,
Rect.top+4,stringgrid1.Cells[Acol,Arow]);
                          end; end;
                           end;

procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.Cells[2,2]:="Значение1";
StringGrid1.Cells[2,3]:="Значение2";
StringGrid1.Cells[2,4]:="Значение3";
StringGrid1.Cells[2,5]:="Значение4";
StringGrid1.Cells[2,6]:="Значение5";
StringGrid1.Cells[1,2]:="10.10.2004";
StringGrid1.Cells[1,3]:="11.10.2004";
StringGrid1.Cells[1,4]:="9.10.2004";
StringGrid1.Cells[1,5]:="10.10.2004";
end;


 
saNat ©   (2004-10-10 11:13) [5]

Спасибо. Просто неправильно задал вопрос...



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

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



Память: 0.46 MB
Время: 0.021 c
1-1097344894
Ricks
2004-10-09 22:01
2004.10.24
Математика + Height Map


1-1097406315
SNV-Soft
2004-10-10 15:05
2004.10.24
Как заставить работать OnMouseMove у панели!?


1-1097500992
neznaika
2004-10-11 17:23
2004.10.24
MDIChild в DLL-ке


1-1097494617
Dinnik
2004-10-11 15:36
2004.10.24
Количество знаков после запятой


8-1088930530
VVV
2004-07-04 12:42
2004.10.24
Обмен переменными между Flash ем и Delphi




   Наверх