![]() |
|
![]() ![]() ![]() |
|
Reptile |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 30.9.2006 Где: Украина, Первомай ск Репутация: 2 Всего: 3 |
Оказывается - напрямую никак ![]() Можно хитро ![]() Когда находиш нужную ячейку становишся на нее сохраняеш какую нибудь глобальную переменную и перерисовываеш StringGrid
В OnDrawCell пишеш
P.S. Переписывал из Delphi так что могут быть ошибки, но ход мысли, я думаю, ясен. |
||||
|
|||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
Опять же как передать данные строки? Такой код красит всю таблицу кроме первого столбца первой строки! =)
|
|||
|
||||
Reptile |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 30.9.2006 Где: Украина, Первомай ск Репутация: 2 Всего: 3 |
Не правильно поставил условие в Delphi
|
||||
|
|||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
А что значит "in State" в строке "gdFocused in State"?
|
|||
|
||||
Reptile |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 30.9.2006 Где: Украина, Первомай ск Репутация: 2 Всего: 3 |
||||
|
||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
||||
|
||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
Я пишу вот так:
Но выделяется таблица неправильно... =( :'( |
|||
|
||||
Vyacheslav |
|
||||||||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
![]() Переводим на русский язык
А Вам нужно, по всей видимости, убедится находится ли в фокусе конкретная ячейка. Что же делать? Ответ простой смотреть хелп Научить, как правильно это делать? открываем TCustomDrawGrid::OnDrawCell
Нас интересует TGridDrawState. Щелкаем по нему(он выделен зеленым цветом) Получаем
Если мы обладаем достаточным любопытством, нас конечно за интересует, что такое тип Set(тоже выделен зеленым цветом). Щелкаем по нему, смотрим список методов и , о чудо, видим метод
После этого нам сразу становится понятно ![]()
по билеровски будет выглядет так
Вот так примерно обычно пользуются хелпом -------------------- С уважением, Вячеслав Ермолаев |
||||||||||||||
|
|||||||||||||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
Большое спасибо, но тем не менее вопрос не решен... выделяется только последняя строка...
|
|||
|
||||
pandrew |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 27.3.2006 Репутация: 3 Всего: 3 |
Попробуй при отрисовке выделять не прямоугольником, а меняя цвет кисти:
У меня, по крайней мере, все отлично выделяется. |
|||
|
||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
Вообщем, написал вот такой код:
[CODE]void __fastcall TForm6::FillRow(int RowNum) { TRect Rec; for(i=0; i<=Form1->StringGrid1->ColCount; i++) { Rec=Form1->StringGrid1->CellRect(i,RowNum); Form1->StringGrid1->Canvas->Brush->Color=StringToColor(0x00C56A31); Form1->StringGrid1->Canvas->FillRect(Rec); } }[CODE] Вот только как показать текст?! =) |
|||
|
||||
Reptile |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 30.9.2006 Где: Украина, Первомай ск Репутация: 2 Всего: 3 |
Пробовал? |
|||
|
||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
Пробовал, но проблема в том, что написал свою собственную функцию, а при записи
возникают ошибки при обращении к функции : FillRow(p); , где p - номер строки... |
|||
|
||||
Reptile |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 30.9.2006 Где: Украина, Первомай ск Репутация: 2 Всего: 3 |
Какие ошибки?
|
|||
|
||||
docwar |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 24.9.2006 Репутация: нет Всего: нет |
[C++ Error] Unit6.cpp(30): E2193 Too few parameters in call to '_fastcall TForm6::FillRow(int,int,int,TRect &)'
Это на строчке FillRow(p); |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |