Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.19;
Скачать: CL | DM;

Вниз

Перекрашенные ячейки StringGrid_a и выделение.   Найти похожие ветки 

 
Zheksik ©   (2008-01-17 11:41) [0]

При выделении, ячейки которые были перекрашены, не выделяются цветом выделения. Как сделать, чтобы выделялись все ячейки, независимо от того, были ли они предварительно перекрашены?

P.S. Вопрос, как и ответ, по идее не сложный, но пока разобраться не получилось. Если есть желающие помоч, жду варианты решения.

p.s.2 не нужно умничать, я никого не заставляю отвечать, просто спрашиваю у тех кто знает ответ и готов помоч.


 
Григорьев Антон ©   (2008-01-17 11:48) [1]

Если уж вы перерисовываете ячейки, вы отвечаете за всё, в т.ч. и за выделение цветом при выборе. У события OnDrawCell есть параметр State - проверяйте в нём флаг gdSelected и в зависимости от этого закрашивайте ячейку обычным или выделенным цветом.


 
{RASkov} ©   (2008-01-17 11:48) [2]

> [0] Zheksik ©   (17.01.08 11:41)

Как и где красишь? Параметр State - учитываешь?


 
Zheksik ©   (2008-01-17 11:50) [3]

Григорьев Антон ©   (17.01.08 11:48) [1]
{RASkov} ©   (17.01.08 11:48) [2]

спасибо. Это то что нужно.


 
Zheksik ©   (2008-01-17 11:54) [4]

кто-нибудь знает для чего первая ячейка остаётся не выделенной и как её выделять наравне с другими???


 
{RASkov} ©   (2008-01-17 11:59) [5]

> [4] Zheksik ©   (17.01.08 11:54)

Тот же параметр, только проверяй gdFocused


 
Zheksik ©   (2008-01-17 12:01) [6]

{RASkov} ©   (17.01.08 11:59) [5]
спасибо


 
{RASkov} ©   (2008-01-17 12:05) [7]

> [6] Zheksik ©   (17.01.08 12:01)

:)
Надеюсь про третье значение сего параметра сам в хелпе прочитаешь...:)


 
Zheksik ©   (2008-01-17 12:15) [8]

{RASkov} ©   (17.01.08 12:05) [7]
:) прочитал

странно, почему я не попадаю в процедуру:
if (state = [gdFocused]) then
 begin
  !!!!!!!!!!!!!!!!!
 end;


при выделении в таблице?


 
{RASkov} ©   (2008-01-17 12:18) [9]

> [8] Zheksik ©   (17.01.08 12:15)

Выделенных может быть много, а ИмеющаяФокус - одна...
И наверняка ИмеющаяФокус еще и выделенная.... проверь.


 
Zheksik ©   (2008-01-17 12:18) [10]

да и вообще, при активации ячейки... облетаю вход в этот обработчик...


 
{RASkov} ©   (2008-01-17 12:19) [11]

> И наверняка ИмеющаяФокус еще и выделенная.... проверь.

Т.е. нечто так:
if gdFocused in state then
begin
 !!!!!!!!!!!!!!!!!
end;


 
{RASkov} ©   (2008-01-17 12:20) [12]

> [10] Zheksik ©   (17.01.08 12:18)
> да и вообще, при активации ячейки... облетаю вход в этот
> обработчик...

Вот уж не обманывай :)


 
Zheksik ©   (2008-01-17 12:22) [13]

{RASkov} ©   (17.01.08 12:18) [9]
красота.

Спасибо.


 
Zheksik ©   (2008-01-17 12:23) [14]

{RASkov} ©   (17.01.08 12:20) [12]

серьёзно.

а облетал, т.к. опять же имело значение state = [gdSelected..gdFocused]


 
{RASkov} ©   (2008-01-17 12:25) [15]

> [14] Zheksik ©   (17.01.08 12:23)
> а облетал, т.к. опять же имело значение state = [gdSelected..gdFocused]

"Облетал" твое условие, но никак не обработчик :) Ага)


 
Zheksik ©   (2008-01-17 12:29) [16]

сдаюсь


 
MsGuns ©   (2008-01-18 10:22) [17]

Стрингрид иногда "капризничает", не желая перерисовывать ячейки даже при "насильном" вызове Update (в частности, этот эффект  возникает при отрисовке поверх сетки других контролов: TImage,TEdit, TCombobox.. с последующим их прятанием) - в этом случае можно "дергать" его с помощью прыгания от текущей ячейки в соседнюю и обратно.



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

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

Наверх




Память: 0.5 MB
Время: 0.016 c
15-1219834044
Riply
2008-08-27 14:47
2008.10.19
Отложенная запись.


2-1221057756
deras
2008-09-10 18:42
2008.10.19
Работа с датой


15-1219823314
Darvin
2008-08-27 11:48
2008.10.19
Эффекты на висте. Какие будут мнения?


15-1219907036
vuk
2008-08-28 11:03
2008.10.19
03.09.08 - King Crimson Festival. Никто не собирается?


2-1220531255
zzz
2008-09-04 16:27
2008.10.19
Проверка на последнюю запись