Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.92/25: Рейтинг темы: голосов - 25, средняя оценка - 4.92
72 / 61 / 24
Регистрация: 20.09.2016
Сообщений: 559

StringGrid, как сделать сетку оранжевого цвета между ячейками?

20.10.2016, 20:48. Показов 5557. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Много ячеек, много данных, все сливается, как сделать сетку между ячейками по толщине допустим 0,2 и закрасить в оранжевый цвет

Добавлено через 26 секунд
ну или обычного черного цвета любой толщины
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.10.2016, 20:48
Ответы с готовыми решениями:

WPF. 3D графика. Как создать цветную сетку?!, одну сетку раскрасить в разные цвета...
Подскажите,люди добрые, как справится с WPF приложением....Чахну над XAML... Всевозможные самоучители поселили в моей голове светлую...

Как сделать отступ между ячейками ?

Переход между ячейками StringGrid-а по нажатию пробела
Как создать событие по переходу в следующую ячейку stringgrid по нажатию пробела?

24
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 12
20.10.2016, 21:06
Цвет изменить без переписывания дикого объема кода нельзя: Изменить цвет сетки в DBGrid
0
72 / 61 / 24
Регистрация: 20.09.2016
Сообщений: 559
20.10.2016, 21:19  [ТС]
как быть тогда, неужели никто не решал такой вопрос, может как то исхитриться можно
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 12
20.10.2016, 21:39
Я по ссылке написал, как можно: перерисовывай вручную весь грид. Устраивает такое решение?
0
72 / 61 / 24
Регистрация: 20.09.2016
Сообщений: 559
20.10.2016, 21:40  [ТС]
устраивает любое, лишь бы работало, подскажешь как именно ?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 12
20.10.2016, 22:03
Нет. Мне 400 строк кода на С++ переводить неинтересно, с бубном танцевать, чтобы заставить дельфийский код с минимальными изменениями работать - тем более. Мне проще взять и поменять VCL-тему приложения, и оно станет фиолетовым в крапинкусиним или черным с оранжевой подсветкой, с очень четко видимыми линиями между ячейками.

P.S. Чтобы зря не искать - это присутствует, начиная с RAD XE.
0
72 / 61 / 24
Регистрация: 20.09.2016
Сообщений: 559
30.10.2016, 07:51  [ТС]
Мне проще взять и поменять VCL-тему приложения, объясни пжлста как это сделать ?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 12
30.10.2016, 11:08
Зайти в настройки проекта, на вкладку Application -> Appearance, и выбрать нужный стиль
1
72 / 61 / 24
Регистрация: 20.09.2016
Сообщений: 559
31.10.2016, 08:34  [ТС]
Спасибо, прикольно получается, но это не то что мне нужно)
0
188 / 41 / 12
Регистрация: 22.02.2016
Сообщений: 149
31.10.2016, 09:40
Можешь кинуть скрин того что ты хочешь получить. В свое времяизменял отображение ячеек в TDBGrid, а он наследуется от StringGrid. Может и помогу чем
1
188 / 41 / 12
Регистрация: 22.02.2016
Сообщений: 149
31.10.2016, 18:28
Лучший ответ Сообщение было отмечено Dias606 как решение

Решение

Много ячеек, много данных, все сливается, как сделать сетку между ячейками по толщине допустим 0,2 и закрасить в оранжевый цвет
Если переопределить метод рисования (OnDrawCell) содержимого ячеек, то можно раскрасить его как угодно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void __fastcall TForm1::StringGrid1DrawCell(TObject *Sender, int ACol,
      int ARow, TRect &Rect, TGridDrawState State)
{
  StringGrid1->Canvas->Pen->Width=1;
  StringGrid1->Canvas->Pen->Color=clRed;
  StringGrid1->Canvas->MoveTo(Rect.right, Rect.top);
  StringGrid1->Canvas->LineTo(Rect.right, Rect.bottom);
 
  StringGrid1->Canvas->Pen->Width=3;
  StringGrid1->Canvas->Pen->Color=clBlue;
  StringGrid1->Canvas->MoveTo(Rect.left,  Rect.bottom);
  StringGrid1->Canvas->LineTo(Rect.right, Rect.bottom);
}
ну или обычного черного цвета любой толщины
Если необходимо просто изменить ширину линий, то можно воспользоваться свойством объекта GridLineWidth
Миниатюры
StringGrid, как сделать сетку оранжевого цвета между ячейками?  
2
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 12
31.10.2016, 18:33
Если попробовать рисовать при разрешенных Runtime Themes, а не на древнем BCB6 в стиле Win95 - то все будет далеко не так радужно и просто.

Добавлено через 39 секунд
Цитата Сообщение от Dias606 Посмотреть сообщение
но это не то что мне нужно)
Ты же ничего не сказал, что именно тебе нужно, как я должен догадаться?
0
188 / 41 / 12
Регистрация: 22.02.2016
Сообщений: 149
01.11.2016, 08:50
Какая разница где рисовать? Здесь чистая win-api реализация в обертке борланда. При желании можно адаптировать под любой стиль.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 12
01.11.2016, 10:16
При желании можно адаптировать под любой стиль.
Пробовал? Попробуй, потом скажешь, осталось у тебя желание после всех этих наворотов продолжать извращаться, или нет. На словах всегда все просто...
0
188 / 41 / 12
Регистрация: 22.02.2016
Сообщений: 149
01.11.2016, 14:00
Пробовал? Попробуй, потом скажешь, осталось у тебя желание после всех этих наворотов продолжать извращаться, или нет. На словах всегда все просто...
А что здесь пробовать? Если будет необходимость или у кого-то вопрос, будем делать
В топике был конкретный вопрос, а вот ваши на него ответы
Цвет изменить без переписывания дикого объема кода нельзя: Изменить цвет сетки в DBGrid
Мне 400 строк кода на С++ переводить неинтересно,
Я же показал простую реализацию. Что не так-то?
Я практик и делюсь теми знаниями, что использовал в своих программах, а не отправляю к источникам оставив человека наедине с его проблемой
0
01.11.2016, 15:24

Не по теме:

Цитата Сообщение от dstar Посмотреть сообщение
Я же показал простую реализацию. Что не так-то?
А какая логика программы, при изменении цвета ? Это как-то может повлиять на ее логику ? Она станет работать по-другому, быстрее, правильнее ?? Как по мне - это просто "хотелка" юзверя, и убивать кучу времени на решение никому ненужной проблемы - вот это уже утопия. Сделать можно все что угодно, даже руку сломать. Но какой будет в этом смысл ? Каждый тратит свое время - по-своему!

0
188 / 41 / 12
Регистрация: 22.02.2016
Сообщений: 149
01.11.2016, 16:58
А какая логика программы, при изменении цвета ? Это как-то может повлиять на ее логику ? Она станет работать по-другому, быстрее, правильнее ?? Как по мне - это просто "хотелка" юзверя, и убивать кучу времени на решение никому ненужной проблемы - вот это уже утопия. Сделать можно все что угодно, даже руку сломать. Но какой будет в этом смысл ? Каждый тратит свое время - по-своему!
Причем здесь логика? Есть вопрос, на него дан ответ, причем на него не было убито кучу времени. Если следовать вашему изложению то внешний вид программного обеспечения совсем не играет никакой роли, вот только некоторые вкидывают в это немало средств чтобы сделать из убогого интерфейса и стандартных компонент что-то презентабельное. Программное обеспечение - это не только бизнес-логика, а еще и внешний интерфейс. Я не думаю, что Вы сами работаете с восьмибитовой палитрой операционной системы (ведь так быстрее), а возможно используете и полупрозрачность отображения окон.
1
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
02.11.2016, 09:08
Цитата Сообщение от dstar Посмотреть сообщение
Я не думаю, что Вы сами работаете с восьмибитовой палитрой операционной системы (ведь так быстрее), а возможно используете и полупрозрачность отображения окон.
Еще раз доказывает, что вы не в теме . Почему-то большинство качественных утилит пишется для консоли, а не со всякими "рюшечками" и "украшательствами". Организации интерфейса уделено много внимания в плане юзабилити и эргономики, а не тупо накидать кучу компонент куда попало. К тому же дали ответ - переписывать кучу кода. Кому это нужно - тот пусть и занимается.
0
188 / 41 / 12
Регистрация: 22.02.2016
Сообщений: 149
02.11.2016, 10:15
Читайте внимательно топик. Про переписывание кода было не моим ответом. Еще раз повторюсь. Был вопрос. Значит это кому-то нужно. На него дан ответ. И давайте закроем эту тему. Если хотите что-то сказать - пишите в личку. С радостью Вам отвечу.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 12
02.11.2016, 10:38
Если хотите что-то сказать - пишите в личку.
Если не хотите проблем - перечитайте Правила форума. Начать можно с 4.6... Не надо устраивать из форума частный чатик.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.11.2016, 10:38
Помогаю со студенческими работами здесь

Какая функция перемещает фокус между ячейками в StringGrid?
Хочу переопределить навигацию по Grid, чтобы по вводу фокус переходил на следующую ячейку. Как некручу невыходит, данные загнать легко, а...

Как сделать зависимость между ячейками в строке Access 2016
Надо достать из ячейки "цена" значение и дублировать его в ячейку "текущая задолжность" чтобы не было других значений из других строк...

Сделать линию между ячейками TStringGrid толщиной в один пиксел
На форме не запущенного приложения - вроде тонкая линия, а как запускается - пиксела 2-3 точно, а там схема под ней...надо тоньше...

Как сделать переход цвета между фото в Photoshop
Как сделать переход цвета между фото подскажите пожалуйста???(в фотошопе)

Связь между ячейками. Как?
Здравствуйте! Имею два ряда данных: к примеру Х и У. Каждому Х соответствует свой У. Появилась необходимость упорядочить все Х по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru