Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.18;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.037 c
1-1166759833
firebird
2006-12-22 06:57
2007.02.18
Delphi не запускается?


15-1170042568
Slider007
2007-01-29 06:49
2007.02.18
С днем рождения ! 27 января


2-1170100189
Romeo12
2007-01-29 22:49
2007.02.18
помогите пожалуйста


2-1170264012
Шоломицкий С. А.
2007-01-31 20:20
2007.02.18
Объединение UPDATE


8-1145444606
hosco
2006-04-19 15:03
2007.02.18
Информация о видео-файле