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

Вниз

Перекрашенные ячейки 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.005 c
2-1221222546
savyhinst
2008-09-12 16:29
2008.10.19
Про DLL


2-1221045757
Нов_и_чок
2008-09-10 15:22
2008.10.19
Системные иконки Shell32.dll


2-1221213675
interandry
2008-09-12 14:01
2008.10.19
MDI окна


4-1197829713
Alex_Nik
2007-12-16 21:28
2008.10.19
Подключались ли внешние носители информации


1-1200714304
Архип
2008-01-19 06:45
2008.10.19
Выборка





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