Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Вниз

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

 
Khabibulin ©   (2006-12-13 22:58) [0]

Здравствуйте!
Помогите закрасить требуемую ячейку в StringGrid, например:
StringGrid.Cells[3, 4]...
За ранее спасибо!


 
Virgo_Style ©   (2006-12-13 23:09) [1]

см. OnDrawCell


 
Khabibulin ©   (2006-12-13 23:12) [2]

а пример конкретный можно...


 
Anatoly Podgoretsky ©   (2006-12-13 23:41) [3]

> Khabibulin  (13.12.2006 23:12:02)  [2]

Тебе его скопировать сюда?


 
Virgo_Style ©   (2006-12-13 23:46) [4]

не забыть выключить DefaultDrawing (или как его, лень опять Delphi запускать)

Как-то так, к примеру (на коленке по-быстрому):

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
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
     DrawFrameControl({TStringGrid(Sender).Canvas.}Handle,Rect,DFC_BUTTON,DFCS_BUTTON PUSH);
     Brush.Color:=clBtnFace;
     TextOut(X,Y,TStringGrid(Sender).Cells[ACol,ARow] );
   end else begin
    if (gdSelected in State) then Brush.Color:=clBlue else
      if ((ACol=3) and (ARow=4)) then
        Brush.Color:=clRed
      else
        Brush.Color:=clWhite;
    TextRect(Rect,X,Y,TStringGrid(Sender).Cells[ACol,ARow] );
    if (gdFocused in State) then
      DrawFocusRect(Rect);
   end;
 end;
end;

P.S. [2] отделяет от [1] три минуты. Скажи, что ты сделал за эти три минуты? Прочитал справку? Поискал пример? Посмотрел параметры OnDrawCell?
Э-эх...


 
Khabibulin ©   (2006-12-14 00:21) [5]

Спасибо огромное!


 
Германн ©   (2006-12-14 01:32) [6]

Ну почему на "Королевстве" есть статья о раскраске только DBGrid"a! Или я не информирован достаточно полно? :-)


> Virgo_Style ©   (13.12.06 23:46) [4]
...
> Как-то так, к примеру (на коленке по-быстрому):

Ну если "по-быстрому", то полезно помнить, что оператор with допускает перечисление условий через запятую :-)


 
Плохиш ©   (2006-12-14 11:05) [7]


> Германн ©   (14.12.06 01:32) [6]
> Ну почему на "Королевстве" есть статья о раскраске только
> DBGrid"a

Может им претит копирование примеров из справки?



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

Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.037 c
2-1166076722
Клара
2006-12-14 09:12
2006.12.31
Связи таблиц


15-1165427759
Гоблин
2006-12-06 20:55
2006.12.31
Flash


2-1165818559
Сергей Ю
2006-12-11 09:29
2006.12.31
Работа с socket-ами и sql в одном приложении=многопоточность?


15-1165583652
Cash
2006-12-08 16:14
2006.12.31
Про: "... как решать задачи?"


4-1156153588
J Cara
2006-08-21 13:46
2006.12.31
WinApi + FTP





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский