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

Как создать фильтр на StringGrid?

20.04.2017, 16:41. Показов 7071. Ответов 46
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть таблица в оторой первоначально введене первое поле мне к примеру нужна отфильтровать чтоб показолись дание
(Прізвище, Ім'я, По батькові). Или за статю на премер чтоб отображались все мужские записи или женские. Как ето зделать.
Миниатюры
Как создать фильтр на StringGrid?  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.04.2017, 16:41
Ответы с готовыми решениями:

Как сделать фильтр для stringgrid
Добрый день. Пишу курсовую работы, а именно базу данных. Нужна помощь в создании фильтров при помощи элемента ComboBox. В самой таблице...

Как создать фильтр?
не подскажите как создать фильтр по следующим условиям: Параметры фильтра передаются как Dictionary<string, string> filters ...

Как создать виджет-фильтр
Подскажите пожалуйста как создать виджет-фильтр?Мне нужно создать просто виджет, который при вставке на фронте должен отобразить блок...

46
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
22.04.2017, 14:27  [ТС]
Студворк — интернет-сервис помощи студентам
Почтальон, да, а что не так?
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
22.04.2017, 14:36
Вам компилятор явно говорит, что не указана конструкция if()
У вас там ошибка в указании условия, попробуйте привести все к одной строке, а не переносить на новые строки
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
22.04.2017, 15:14  [ТС]
Почтальон, да но мне нужна както здель ищо фильтр на (Прызвище, Ім'я, По батькові, Стать, Адрес, № телефону) но как ето реализовать я не знаю.
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
void __fastcall TFormMain::SpeedButton7Click(TObject *Sender)
{
 Form2->Visible=true;
TStringList *data = new TStringList;// дата выполнения
 
 for (int i = 1; i < StringGrid1->RowCount; i++)// основная база на
 {
 if(( data->IndexOf(data->Text.SubString(data->Text.Pos(StringGrid1->Cells[5][i]),StringGrid1->Cells[5][i].Length())))<0)
              {
                  data->Add(StringGrid1->Cells[5][i]);// дата выполнения
              }
   else
   if(
   data->Strings[data->IndexOf(data->Text.SubString(data->Text.Pos(StringGrid1->Cells[5][i]),StringGrid1->Cells[5][i].Length()))]
   != StringGrid1->Cells[5][i]
     )
     {
        data->Add(StringGrid1->Cells[5][i]);// дата выполнения
     }
 
 }
    data->Sort(); // сортирую список
    Form2->CheckListBox1->Items->Text = data->Text;// дата выполнения
    data->Insert(0,"Показать все");// дата выполнения
    delete data;
 
    SGZ->RowCount = StringGrid1->RowCount;
    SGZ->ColCount = StringGrid1->ColCount;
    for (int i = 0; i < StringGrid1->RowCount; i++)
    {
      SGZ->Rows[i]=StringGrid1->Rows[i];
    }
}
Миниатюры
Как создать фильтр на StringGrid?  
0
 Аватар для lifeforce
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
22.04.2017, 16:59
Solara,
Чтоб добавить еще -то делай копию типа
C++
1
2
TStringList *data = new TStringList;//дата народженя
TStringList *famely = new TStringList;//фамилия
и т.д.
и после к циклу добавляешь

C++
1
2
3
4
5
6
7
8
9
10
for (int i = 1; i < StringGrid1->RowCount; i++)// основная база на
{
if(( data->IndexOf(data->Text.SubString(data->Text.Pos(StringGrid1->Cells[5][i]),StringGrid1->Cells[5][i].Length())))<0)
{
data->Add(StringGrid1->Cells[5][i]);// дата выполнения
}
if(( famely->IndexOf(data->Text.SubString(famely->Text.Pos(StringGrid1->Cells[5][i]),StringGrid1->Cells[5][i].Length())))<0)
{
famely->Add(StringGrid1->Cells[5][i]);//фамилия
}
и т.д.
ну и чекбоксы и комбобоксы.

C++
1
2
3
4
5
6
7
8
9
10
11
  data->Sort(); // сортирую список
    CheckListBox1->Items->Text = data->Text;// дата выполнения
    data->Insert(0,"Показать все");// дата выполнения
    ComboBox1->Items->Text = data->Text;// дата выполнения
    delete data;
 
   famely->Sort(); // сортирую список
    CheckListBox2->Items->Text = famely->Text;// фамилия
    famely->Insert(0,"Показать все");// фамилия
    ComboBox2->Items->Text = famely->Text;// фамилия
    delete famely;
Добавлено через 10 минут
Solara,
странная у тебя загрузка файла в стринггрид.
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
22.04.2017, 18:55  [ТС]
lifeforce, Почему так?
Миниатюры
Как создать фильтр на StringGrid?   Как создать фильтр на StringGrid?   Как создать фильтр на StringGrid?  

Вложения
Тип файла: txt Новий текстовий документ (2).txt (9.5 Кб, 2 просмотров)
Тип файла: txt Новий текстовий документ (3).txt (5.5 Кб, 2 просмотров)
0
 Аватар для lifeforce
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
22.04.2017, 19:42
Solara,
ведь не все должно подвергаться копи-паст!
C++
1
void __fastcall TFormMain::SpeedButton7Click(TObject *Sender)
всегда повторяется одна и та-же бессмысленная операция.
C++
1
2
3
4
5
6
    SGZ->RowCount = StringGrid1->RowCount;
    SGZ->ColCount = StringGrid1->ColCount;
    for (int j = 0; j < StringGrid1->RowCount; j++)
    {
      SGZ->Rows[j]=StringGrid1->Rows[j];
    }
перемести это в начало и удали все остальные после цикла.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void __fastcall TFormMain::SpeedButton7Click(TObject *Sender)
{
Form2->Visible=true;
TStringList *data = new TStringList;// дата выполнения
TStringList *text = new TStringList;//Прізвище
TStringList *name = new TStringList;//Ім'я
TStringList *lname = new TStringList;//По батькові
TStringList *sta = new TStringList;//Сатать
TStringList *adrs = new TStringList;//Адрес
TStringList *nomt = new TStringList;//№ телефону
 
    SGZ->RowCount = StringGrid1->RowCount;
    SGZ->ColCount = StringGrid1->ColCount;
    for (int j = 0; j < StringGrid1->RowCount; j++)
    {
      SGZ->Rows[j]=StringGrid1->Rows[j];
    }
 
 
 for (int i = 1; i < StringGrid1->RowCount; i++)// основная база на
Добавлено через 4 минуты
и в цикле у тебя тоже все с одним индексом!
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
   }
   if(text->Strings[text->IndexOf(text->Text.SubString(text->Text.Pos(StringGrid1->Cells[1][i]),StringGrid1->Cells[1][i].Length()))]
   != StringGrid1->Cells[1][i])
   {
   text->Add(StringGrid1->Cells[1][i]);
   }
   if(text->Strings[text->IndexOf(text->Text.SubString(text->Text.Pos(StringGrid1->Cells[1][i]),StringGrid1->Cells[1][i].Length()))]
   != StringGrid1->Cells[1][i])
   {
    name->Add(StringGrid1->Cells[2][i]);
   }
   if(text->Strings[text->IndexOf(text->Text.SubString(text->Text.Pos(StringGrid1->Cells[1][i]),StringGrid1->Cells[1][i].Length()))]
   != StringGrid1->Cells[1][i])
   {
     lname->Add(StringGrid1->Cells[3][i]);
   }
   if(text->Strings[text->IndexOf(text->Text.SubString(text->Text.Pos(StringGrid1->Cells[1][i]),StringGrid1->Cells[1][i].Length()))]
   != StringGrid1->Cells[1][i])
   {
   sta->Add(StringGrid1->Cells[4][i]);
   }
   if(text->Strings[text->IndexOf(text->Text.SubString(text->Text.Pos(StringGrid1->Cells[1][i]),StringGrid1->Cells[1][i].Length()))]
   != StringGrid1->Cells[1][i])
   {
   adrs->Add(StringGrid1->Cells[6][i]);
   }
   if(text->Strings[text->IndexOf(text->Text.SubString(text->Text.Pos(StringGrid1->Cells[1][i]),StringGrid1->Cells[1][i].Length()))]
   != StringGrid1->Cells[1][i])
   {
   nomt->Add(StringGrid1->Cells[7][i]);
    }
при копи паст всегда проверяй все строки.
невнимательно

Добавлено через 21 минуту
Solara, Стоп!
у тебя как загружается база?
после загрузки базы делаешь ее копию в невидимый стрингрид.(больше его не тронь!)
теперь при клике на кнопку я так понял у тебя всегда идет постоянная перезагрузка чекбоксов!
и теперь еще два раза нажмешь и у тебя ничего в базе не останется!
в моем примере
C++
1
2
3
4
////////////////////////////////////////////////////////////////////////////////
//загрузка базы и формирование спика для комбобокса и чек листа
////////////////////////////////////////////////////////////////////////////////
void __fastcall TForm1::SpeedButtonClick(TObject *Sender)
это основная загрузка базы из SQL сервера. это кнопка РЕЛОАД!(она может работать и стаймером)
в твоем случае надо все по другому
отдельная кнопка загрузка базы и там поставить надо вот это
C++
1
2
3
4
5
6
    SGZ->RowCount = StringGrid1->RowCount;
    SGZ->ColCount = StringGrid1->ColCount;
    for (int j = 0; j < StringGrid1->RowCount; j++)
    {
      SGZ->Rows[j]=StringGrid1->Rows[j];
    }
теперь у тебя копия базы постоянная! (и не трогать ее!)
и там-же сразу и создай все чекбоксы .
и теперь при вызове второй формы с фильтрами там будут правильные данные.

Добавлено через 1 минуту
и не надо их каждый раз перезагружать.
1
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
22.04.2017, 19:57  [ТС]
lifeforce, да извыняюст за неуважность, но что та ищо нетак но что?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void __fastcall TFormMain::SpeedButton7Click(TObject *Sender)
{
Form2->Visible=true;
TStringList *data = new TStringList;// дата выполнения
TStringList *text = new TStringList;//Прізвище
TStringList *name = new TStringList;//Ім'я
TStringList *lname = new TStringList;//По батькові
TStringList *sta = new TStringList;//Сатать
TStringList *adrs = new TStringList;//Адрес
TStringList *nomt = new TStringList;//№ телефону
     SGZ->RowCount = StringGrid1->RowCount;
     SGZ->ColCount = StringGrid1->ColCount;
    for (int j = 0; j < StringGrid1->RowCount; j++)
    {
      SGZ->Rows[j]=StringGrid1->Rows[j];
    }
Вышло так
C++
1
2
3
4
 nomt->Sort();
    Form2->CheckListBox7->Items->Text = nomt->Text;
    nomt->Insert(0,"Показать все");
    delete nomt;
но неработает
Миниатюры
Как создать фильтр на StringGrid?  
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
22.04.2017, 20:04  [ТС]
lifeforce, загруска с екселя
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
23.04.2017, 14:32  [ТС]
lifeforce, даже без второва цыкла работает но тот е результат. Я индексы все меня непомогло что делать незнаю. Помогите пожалуста))
Вложения
Тип файла: txt Новий текстовий документ (4).txt (3.2 Кб, 2 просмотров)
0
 Аватар для lifeforce
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
23.04.2017, 23:17
Solara,
у тебя нарушен порядок.
1 запуск программы.
2 загрузка базы (с созданием копии базы в невидимый стринггрид и создание списка чекбоксов)
3 вызов формы с чекбоксами и выбор фильтра. фильтр читает скрытые стринггрид и выводит строки только выбранного фильтра. т.е. основной стрингрид1 постоянно меняет содержимое!

когда тебе нужен фильтр ты всегда

Добавлено через 1 час 7 минут
вызываешь это?
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
Form2->Visible=true;
TStringList *data = new TStringList;// дата выполнения
TStringList *text = new TStringList;//Прізвище
TStringList *name = new TStringList;//Ім'я
TStringList *lname = new TStringList;//По батькові
TStringList *sta = new TStringList;//Сатать
TStringList *adrs = new TStringList;//Адрес
TStringList *nomt = new TStringList;//№ телефону
 
// обновление видимой базы из резервной копии.
 for (int i = 0; i < SGZ->RowCount; i++)
    {
      StringGrid1->Rows[i]=SGZ->Rows[i];
    }
    
// выбор по колонкам и составление списка для чекбоксов    
 for (int i = 1; i < StringGrid1->RowCount; i++)// основная база на
 {
 if(( data->IndexOf(data->Text.SubString(data->Text.Pos(StringGrid1->Cells[5][i]),StringGrid1->Cells[5][i].Length())))<0)
 {
 data->Add(StringGrid1->Cells[5][i]);// дата выполнения
 }
 if(( text->IndexOf(text->Text.SubString(text->Text.Pos(StringGrid1->Cells[1][i]),StringGrid1->Cells[1][i].Length())))<0)
 {
 text->Add(StringGrid1->Cells[1][i]);//Прізвище
 }
 if(( name->IndexOf(name->Text.SubString(name->Text.Pos(StringGrid1->Cells[2][i]),StringGrid1->Cells[2][i].Length())))<0)
  {
  name->Add(StringGrid1->Cells[2][i]);//Ім'я
  }
 if(( lname->IndexOf(lname->Text.SubString(lname->Text.Pos(StringGrid1->Cells[3][i]),StringGrid1->Cells[3][i].Length())))<0)
  {
  lname->Add(StringGrid1->Cells[3][i]);//По батькові
  }
 if(( sta->IndexOf(sta->Text.SubString(sta->Text.Pos(StringGrid1->Cells[4][i]),StringGrid1->Cells[4][i].Length())))<0)
  {
  sta->Add(StringGrid1->Cells[4][i]);//Сатать
  }
 if(( adrs->IndexOf(adrs->Text.SubString(adrs->Text.Pos(StringGrid1->Cells[6][i]),StringGrid1->Cells[6][i].Length())))<0)
  {
  adrs->Add(StringGrid1->Cells[6][i]);//Адрес
  }
 if(( nomt->IndexOf(nomt->Text.SubString(nomt->Text.Pos(StringGrid1->Cells[7][i]),StringGrid1->Cells[7][i].Length())))<0)
  {
  nomt->Add(StringGrid1->Cells[7][i]);//№ телефону
  }
    }
// сортирую списки всех чекбоксов
 
    data->Sort(); 
    Form2->CheckListBox1->Items->Text = data->Text;
    delete data;
 
 
    text->Sort();
    Form2->CheckListBox5->Items->Text = text->Text;
    delete text;
 
 
    name->Sort();
    Form2->CheckListBox4->Items->Text = name->Text;
    delete name;
 
 
    lname->Sort();
    Form2->CheckListBox3->Items->Text = lname->Text;
    delete lname;
 
 
    sta->Sort();
    Form2->CheckListBox2->Items->Text = sta->Text;
    delete sta;
 
 
    adrs->Sort();
    Form2->CheckListBox6->Items->Text = adrs->Text;
    delete adrs;
 
 
    nomt->Sort();
    Form2->CheckListBox7->Items->Text = nomt->Text;
    delete nomt;
это значит все обнуляешь и собираешь список опять!
ладно, может это твоя логика.
тогда посмотри на новый код. там теперь сначала идет загрузка из копии базы в видимую часть и потом составляется новый список для чек боксов (это можно перетерпеть). если продолжишь с программированием - то у тебя уже будет более целенаправленная логика.
сейчас постарайся разобраться в очереди выполнения команд программы.
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
24.04.2017, 09:34  [ТС]
lifeforce, невышло
Миниатюры
Как создать фильтр на StringGrid?  
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
24.04.2017, 16:14  [ТС]
lifeforce, я немношко переделал но чтото не так
Миниатюры
Как создать фильтр на StringGrid?   Как создать фильтр на StringGrid?   Как создать фильтр на StringGrid?  

Вложения
Тип файла: txt Новий текстовий документ (5).txt (13.6 Кб, 2 просмотров)
0
 Аватар для lifeforce
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
24.04.2017, 19:51
Лучший ответ Сообщение было отмечено Solara как решение

Решение

Solara,
ты смотрел мой последний код?
Цитата Сообщение от Solara Посмотреть сообщение
Новий текстовий документ (5).txt
опять все старые ошибки! почему не воспользоваться моим кодом?
C++
1
SpeedButton7Click
что он делает? что это за событие? когда его вызываешь?

картинки с одинаковыми jkgh khjgj trl oru lr ни очем мне не говорят!
выложи код проекта. включи мышление. я описал очередь выполнения команд в программе.
1
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
24.04.2017, 21:11  [ТС]
lifeforce, всьо работает, событее OnClick( не в етом проблема ) я к премиру твой код зделал для каждава Чека
вот так
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
TStringList *lname = new TStringList;// дата выполнения
 
 for (int i = 1; i < StringGrid1->RowCount; i++)// основная база на
 {
 if(( lname->IndexOf(lname->Text.SubString(lname->Text.Pos(StringGrid1->Cells[3][i]),StringGrid1->Cells[3][i].Length())))<0)
              {
                lname->Add(StringGrid1->Cells[3][i]);// дата выполнения
              }
   else
   if(lname->Strings[lname->IndexOf(lname->Text.SubString(lname->Text.Pos(StringGrid1->Cells[3][i]),StringGrid1->Cells[3][i].Length()))]
   != StringGrid1->Cells[3][i])
     {
      text->Add(StringGrid1->Cells[3][i]);// дата выполнения
     }
 
 }
    text->Sort(); // сортирую список
    Form2->CheckListBox3->Items->Text = text->Text;// дата выполнения
    text->Insert(0,"Показать все");// дата выполнения
    delete lname;
 
    SGZ->RowCount = StringGrid1->RowCount;
    SGZ->ColCount = StringGrid1->ColCount;
    for (int i = 0; i < StringGrid1->RowCount; i++)
    {
      SGZ->Rows[i]=StringGrid1->Rows[i];
    }
Большое спасибо деле я сам сокращу код немного.
0
 Аватар для lifeforce
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
24.04.2017, 23:05
Цитата Сообщение от Solara Посмотреть сообщение
text->Insert(0,"Показать все");
это можно выкинуть из программы.
это было только для комбобокса. который у тебя не используется.
сокращать код не самое главное. надо просто настроить программу что-б работала так как задумано.
но в приведенном последнем коде - все еще отсутствие логики.
я уже совсем потерял где основная(сохраненная для чтения база) и какая вывод только фильтра .
если SGZ - резервная (копия базы) то при составлении списка фильтра к примеру по фамилии -> опять перезаписываешь резервную копию базы из фильтрированой записи, т.е. если выбрать в фильтре по фамилии какую нить фамилию и потом выбрать фильтр (стать-пол) то в резервной записи базы ничего не останется для работы фильтра. т.е база пустая. вот и грабли.
а в моем первом примере все чекбоксы в одном событии - 1(экономия кода как ты хочешь) 2 одновременное решение всех фильтров, и остаются только выбранные параметры для листа.


и вот результат фильтра выбора нескольких чекбоксов.
Миниатюры
Как создать фильтр на StringGrid?  
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
25.04.2017, 16:52  [ТС]
lifeforce, да у тебя круче но и у меня работает так как мне нужно, но ищо нада отсортировать от а до я.
0
 Аватар для lifeforce
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
25.04.2017, 19:13
Solara, о сортировке в стринггрид уйма тем.Сортировка в StringGride по клику на заголовке столбца
здесь я предложил вариант сортировки в две стороны.
для смены направления там есть sort_napravlenie который надо объявить глобально.
но а если ничего не менять в коде то сортировка будет в алфавитном порядке начиная с 0 до я.
1
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
10.05.2017, 23:10  [ТС]
lifeforce, почему [bcc32 Warning] W8123 Path 'C:\Users\Home\Desktop\Нова папка (5)' not found - path ignored in option '-I'
0
 Аватар для lifeforce
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
11.05.2017, 07:41
Цитата Сообщение от Solara Посмотреть сообщение
почему [bcc32 Warning] W8123 Path 'C:\Users\Home\Desktop\Нова папка (5)' not found - path ignored in option '-I'
в каком участке кода это появляется?
0
0 / 0 / 0
Регистрация: 19.03.2017
Сообщений: 39
11.05.2017, 20:37  [ТС]
lifeforce, на каждо CheckListBox
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
void __fastcall TForm2::CheckListBox1Click(TObject *Sender)
{
TStringList *data = new TStringList;//дата выполнения
 
    FormMain->StringGrid1->RowCount=2;
    FormMain->StringGrid1->Row=1;
    FormMain->StringGrid1->Rows[1]->Clear();
    bool art=false;
    int n=1;
 
    for (int ck= 0; ck < CheckListBox1->Count; ck++)
    {
 if (CheckListBox1->Checked [ck] == true)
    data->Add(CheckListBox1->Items->Strings[ck]);// дата выполнения // состовляю список
    }
 
  for (int i = 1; i < FormMain->SGZ->RowCount; i++)
  {
   if ( (FormMain->SGZ->Cells[5][i] == data->Text.SubString(data->Text.Pos(FormMain->SGZ->Cells[5][i]),FormMain->SGZ->Cells[5][i].Length())||data->Text=="")// дата выполнения
     && (data->IndexOf(data->Text.SubString(data->Text.Pos(FormMain->SGZ->Cells[5][i]),FormMain->SGZ->Cells[5][i].Length())) >=0 ||data->Text=="")// дата выполнения
      )
   {
    if (art==true)
    FormMain->StringGrid1->RowCount = FormMain->StringGrid1->RowCount+1;
    FormMain->StringGrid1->Rows [FormMain->StringGrid1->RowCount-1]=FormMain->SGZ->Rows[i];
    FormMain->StringGrid1->Cells[0][FormMain->StringGrid1->RowCount-1]= IntToStr(n);
    art=true;
    n++;
   }
  }
    delete data;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.05.2017, 20:37

Как создать фильтр Excel2007
Как создать фильтр,что бы отображались только отрицательные или положительные значения.Причем так чтобы значения остались в своих...

Как правильно создать фильтр?
Здравствуйте. Андроид приложение отправляет запрос на получение данных к серверу. Там апи написанно на пхп. И там происходит sql запрос -...

Фильтр в StringGrid
Здравствуйте, форумчане! Имеется таблица StringGrid. В Excel есть такая функция, как &quot;Фильтр&quot;. Так вот, как я могу осуществить...

Как создать фильтр по нескольким параметрам пример как сайте ecar.kz
Добрый день добрые люди! Месяц ищу, изучаю как создать подобный фильтр указанный на сайте ecar.kz с выводом из БД. Но никак не могу...

Как создать фильтр приработе в C# c Excel
Помогите сделать кнопку-обработчик полей в определенном столбце таблицы, загруженной из MS Excel, чтобы по части слова, если оно...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru