Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.72/25: Рейтинг темы: голосов - 25, средняя оценка - 4.72
2 / 0 / 0
Регистрация: 08.12.2011
Сообщений: 137

Цвет ячейки StringGrid

14.11.2012, 12:56. Показов 5445. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно сделать так чтобы в stringride выделялось красным цветом фон ячейки с максимальным элементом
Вот код.Все работает ОТЛИЧНО. Помогите с цветом.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   setlocale(0, "");
   srand(unsigned(time(NULL)));
   int i,j;
   double N, M;
   N=StrToInt(Edit1->Text);
   M=StrToInt(Edit1->Text);
   int ** A = new int * [N];
   for (int i = 0; i < N; i++)
   A [i] = new int [M];
   for (int i = 0; i < N; i++)
   for (int j = 0; j < M; j++)
   A [i][j] = ((rand() % 10));
 
               //âûâîä
   for(i=0; i<N; i++)
   for(j=0; j<M; j++)
   StringGrid1->Cells[i][j]=StrToInt(A [i][j]);
                 //ìàêñ ýëåìåíò
   int l,r;
   int max = A[0][0];
   for(i=0; i<N; i++)
   for(j=0; j<M; j++)
   {
      if (max < A[i][j])
         {
            max=A[i][j];
            //StringGrid1->Canvas->Font->Color = clRed;
            l=i+1;
            r=j+1;
         }
   }
   Edit5->Text=StrToInt(max);
   Edit3->Text=StrToInt(l);
   Edit4->Text=StrToInt(r);
   Edit1->Text="";
   Edit2->Text="";
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.11.2012, 12:56
Ответы с готовыми решениями:

StringGrid И цвет ячейки
Уважаемые форумчане подскажите как изменить цвет ячейки в StringGirid (допустим я отредактировал значение в ячейке и после этого...

Цвет ячейки StringGrid
Есть СтрингГрид (матрица, заполнен целыми числами). По нажатию на кнопку в нем ищутся, допустим, нечетные числа. Как покрасить ячейку с...

Цвет краёв ячейки в StringGrid
Можно ли в StringGrid изменить цвет краёв(границ) какой либо ячейки, не закрашивая саму ячейку? Ну или хотя бы изменить толщину границ...

30
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
17.11.2012, 20:46
Студворк — интернет-сервис помощи студентам
Литература C++ ну и Архангельский
1
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
17.11.2012, 20:51
мой статус ("Практикантроп") - я считаю -прямо указывает, что книжек по программированию я не читал
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
17.11.2012, 20:53
мой статус ("Практикантроп") - я считаю -прямо указывает, что книжек по программированию я не читал
Ага оставим это занятие для котв ученых и для Пушкина
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
17.11.2012, 20:54
Цитата Сообщение от Avazart Посмотреть сообщение
Ага оставим это занятие для котов
+10!
0
2 / 0 / 0
Регистрация: 08.12.2011
Сообщений: 137
17.11.2012, 21:10  [ТС]
Че значит не читал?
А как ты это все знаешь тогда?
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
17.11.2012, 21:17
Давай не будем эту тему развивать... . А то, если я скажу, что у меня аналитический дар, - это сочтут агитацией против освоения литературы; я бы этого не хотел.
0
2 / 0 / 0
Регистрация: 08.12.2011
Сообщений: 137
19.11.2012, 15:22  [ТС]
Обьясните каждую строку
.c_str(); че за метод?
и тд
C++
1
2
3
4
    DrawText(StringGrid1->Canvas->Handle,       //  восстановление текста
      StringGrid1->Cells[ACol][ARow].c_str(),
      StringGrid1->Cells[ACol][ARow].Length(),
      &recc, DT_SINGLELINE);
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
19.11.2012, 15:55
c_str() преобразует строку в массив char (это требуется в параметрах), приставка .Length() возвращает длину этой строки в байтах, &recc - указатель на структуру TRect, DT_SINGLELINE - битовая характеристика для текста ячейки, - их там целая куча, если интересно - пролистай winuser.h тема DrawText() Format Flags.
0
2 / 0 / 0
Регистрация: 08.12.2011
Сообщений: 137
19.11.2012, 18:40  [ТС]
а может есть другие варианты восстановления текста? попроще

я хотел сделать вот так
C++
1
2
3
4
5
6
7
8
9
TRect recc = Rect;
       if (Edit5->Text==StringGrid1->Cells[ACol][ARow] &&
        StringGrid1->Canvas->Brush->Color != clRed  && indi)
        {
        recc.left = Rect.left+3;
        recc.top  = Rect.top+3;
        StringGrid1->Canvas->Brush->Color = clRed;
        StringGrid1->Canvas->FillRect(Rect);
StringGrid1->Cells[ACol][ARow]=Edit5->Text;
Но ячейка мигает
0
2 / 0 / 0
Регистрация: 08.12.2011
Сообщений: 137
22.11.2012, 14:49  [ТС]
Как сделать чтобы после закраски ячейки восстоновить текст на ячейки???
0
 Аватар для Antiplayer
129 / 112 / 39
Регистрация: 27.09.2012
Сообщений: 305
22.11.2012, 15:00
Цитата Сообщение от ilyashis Посмотреть сообщение
Как сделать чтобы после закраски ячейки восстоновить текст на ячейки???
В событии OnDrawCell

C++
1
2
3
TCanvas *b = this->AdvStringGrid1->Canvas;
//тут код закрашивания
b->TextRect(Rect,Rect.left,Rect.top,this->AdvStringGrid1->Cells[ACol][ARow]); //это код восстановления текста
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.11.2012, 15:00

Не могу изменить цвет ячейки StringGrid (Builder 6)
Здравствуйте! Перечитал множество тем по изменению цвета ячеек. Проблему не решил. Необходимо, в зависимости от условия (Cvet=0 или...

Что за системный цвет используется для подсветки выбранной, но неактивной ячейки в StringGrid в Win10?
Что за системный цвет используется для подсветки выбранной, но неактивной ячейки в StringGrid, если программа запущена под Windows 10? У...

Возможность вручную писать данные в ячейки StringGrid и заполнение ячеек StringGrid данными из файла после нажатия кнопки
Здравствуйте! Помогите, пожалуйста. Мне необходимо сделать следующее: реализовать возможность вручную писать данные в ячейки StringGrid...

Цвет границы StringGrid
Добрый день. Есть ли способ изменить цвет бордюра вокруг StringGrid и цвет границ ячеек внутри StringGrid? Спасибо! Добавлено через 6...

Цвет фона ячеек StringGrid
Здравствуйте, помогите, пожалуйста. У меня есть StringGrid, заполненный целыми числами. Нужно чтобы при нажатии на ячейку она меняла цвет...


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

Или воспользуйтесь поиском по форуму:
31
Ответ Создать тему
Новые блоги и статьи
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки. Добавлены следующие реквизиты типа Булево: - Буквы; - Цифры; - Символы. Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей. Самым главным критерием для. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге). Задача: Программно добавить префикс в нумерацию документов. Решение: В модуле объекта. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru