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

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

 
Khabibulin ©   (2006-12-25 02:18) [0]

Как правильно выравнить текст в строке FixedRows в StringGrid?


 
Германн ©   (2006-12-25 02:28) [1]


>
> Khabibulin ©   (25.12.06 02:18)
>
> Как правильно выравнить текст в строке FixedRows в StringGrid?
>
>

А что значит
> правильно
?


 
Khabibulin ©   (2006-12-25 02:54) [2]

Да просто у меня таблица 7х7 и верхняя строка типа Fixed, и когда я в DrawCell StringGrid"a выравниваю текст по центру, везде все отлично, кроме верхней строки (Fixed)... Там остается изначальный невыравненый текст, а поверх него ложится выровненый и получается каша...


 
Германн ©   (2006-12-25 03:02) [3]


> Khabibulin ©   (25.12.06 02:54) [2]
>
> Да просто у меня таблица 7х7 и верхняя строка типа Fixed,
>  и когда я в DrawCell StringGrid"a выравниваю текст по центру,
>  везде все отлично, кроме верхней строки (Fixed)... Там
> остается изначальный невыравненый текст, а поверх него ложится
> выровненый и получается каша...
>

Приведи код OnDrawCell.


 
Khabibulin ©   (2006-12-25 03:05) [4]

procedure...
var
 X, Y: Integer;
begin
 with TStringGrid(Sender).Canvas do
 begin
   with Rect do
   begin
     X := Left + (Right - Left - TextWidth(TStringGrid(Sender).Cells[ACol,
     ARow])) div 2;
     Y := Top + (Bottom - Top - TextHeight(TStringGrid(Sender).Cells[ACol,
     ARow])) div 2;
   end;

   if (gdFixed in State) then
   begin
     Brush.Color := clBtnFace;
     TextOut(X, Y, TStringGrid(Sender).Cells[ACol, ARow]);
   end
   else
   begin
     if (gdSelected in State) then
     begin
       Brush.Color := clBlue
     end
     else
     begin
       if (ACol = 3) and (ARow = 4) then
       begin
         Brush.Color := clRed ;
       end
       else
       begin
         Brush.Color := clWhite;
       end;
     end;

     TextRect(Rect, X, Y, TStringGrid(Sender).Cells[ACol, ARow]);
     if (gdFocused in State) then
     begin
       DrawFocusRect(Rect);
     end;
   end;
 end;
end;


 
Khabibulin ©   (2006-12-25 18:53) [5]

Народ, помогите мне пожалуйста! Срочно надо...


 
Virgo_Style ©   (2006-12-25 22:34) [6]

В приведенном коде указанной проблемы не наблюдается.

вместо TextOut лучше использовать TextRect.



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

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



Память: 0.46 MB
Время: 0.034 c
2-1170276381
Wlad_M
2007-01-31 23:46
2007.02.18
Как вписать недостающий класс в экзешник


15-1169718111
Ericc
2007-01-25 12:41
2007.02.18
ОФФ:На этом сайте была игрушка "Гробница фараона"


2-1170236307
Piroxyline
2007-01-31 12:38
2007.02.18
Глюки с лэйблом


2-1170326279
WhiteBarsik
2007-02-01 13:37
2007.02.18
В EXE не желает включаться "designide"


15-1169636647
RebroFF
2007-01-24 14:04
2007.02.18
Хочу всё знать!




   Наверх