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

Вниз

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

 
Khabibulin ©   (2007-01-07 20:54) [0]

У меня проблема...
закрасить ячейку или диапазон их я вроде могу..., а вот мне надо:
есть массив ColRow[0..9, 0..9] of byte;
и в нем такие значения:
..[2,4] = 1
..[4,1] = 1
..[9,9] = 1
все остальные 0...

значения этого массива в ходе могут изменятся, т.е. мне надо чтоб например: сells[2,4]; ..[4,1]; ..[9,9] где стоят 1-цы были закрашены...


 
Loginov Dmitry ©   (2007-01-08 00:44) [1]

OnDrawCell()


 
Khabibulin ©   (2007-01-08 01:14) [2]

Я понимаю, а подробнее нельзя? желательно на примере моего вопроса...


 
Германн ©   (2007-01-08 01:57) [3]


> Khabibulin ©   (08.01.07 01:14) [2]
>
> Я понимаю, а подробнее нельзя?

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=168


 
Khabibulin ©   (2007-01-08 02:21) [4]

да я по такому принципу уже пробывал, не получается! в смысле красит одну ячейку и все... а мне надо по моему примеру...


 
Германн ©   (2007-01-08 02:32) [5]


> Khabibulin ©   (08.01.07 02:21) [4]
>
> да я по такому принципу уже пробывал, не получается! в смысле
> красит одну ячейку и все... а мне надо по моему примеру.
> ..

Приводи свой код. Найдём ошибку.


 
Khabibulin ©   (2007-01-08 03:06) [6]

var
 X, Y: Integer;
 I1, I2: 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 := clMenuHighLight;
     end
     else
     begin
       if ((((((((( вот что тут надо вписать чтоб оно взаимодействовало с моим массивом )))))))))))) then
       begin
         Brush.Color := clMedGray;
       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;


 
Германн ©   (2007-01-08 03:20) [7]


> if ((((((((( вот что тут надо вписать чтоб оно взаимодействовало
> с моим массивом ))))))))))))

try
 if StrToInt(Cells[ACol, ARow]) = 1 then
...
и т.д. и т.п.


 
Khabibulin ©   (2007-01-08 03:25) [8]

а try тут причем?
вот пропиши мне пожалуйста условие чтоб сells[2,4]; ..[4,1]; ..[9,9] были закрашены...


 
Германн ©   (2007-01-08 03:37) [9]


> Khabibulin ©   (08.01.07 03:25) [8]
>
> а try тут причем?

try тут притом, что в данной ячейке может быть что-то, что не совместимо с типом Integer.


> вот пропиши мне пожалуйста условие чтоб сells[2,4]; ..[4,
> 1]; ..[9,9] были закрашены...
>

Читай ещё и ещё и ещё раз http://www.delphikingdom.com/asp/viewitem.asp?catalogid=168
Ну т.е. до тех пор, пока не поймешь принцип прорисовки окон в Винде!



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

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

Наверх




Память: 0.47 MB
Время: 0.053 c
15-1167850639
Kolan
2007-01-03 21:57
2007.01.28
Не пойму почему код работает :)


2-1168419274
СержК
2007-01-10 11:54
2007.01.28
Как развернуть свернутое приложение поверх всех окон


1-1165487765
sdram
2006-12-07 13:36
2007.01.28
С обьявлениями хомуты


2-1168457149
Kolan
2007-01-10 22:25
2007.01.28
Научите правильно работать с XMLDocument


3-1162973372
jiny
2006-11-08 11:09
2007.01.28
Ширина заголовка строки в DbCross (frxDbCrossObject)





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский