Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
2 / 2 / 1
Регистрация: 26.11.2014
Сообщений: 34

CheckListBox - занесение отмеченных элементов в БД Access и обратный процесс

04.12.2014, 12:17. Показов 1495. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как я понял нужно считать с CheckListBox примерно так

C++
1
2
3
4
int i;
for (i = 0; i < CheckListBox->Items->Count-1; i++) {
  if (CheckListBox->Checked[i]) 
{ /* куда то нужно записывать индекс i элемента*/ }
Но вот куда считать, чтобы потом можно было без труда сохранить это значение в базу и при необходимости считать и "прочекать" обратно CheckListBox?

вот здесь есть пример занесения значений CheckListBox только в ini файл,
C++
1
2
3
4
5
6
7
8
9
10
TIniFile *Ini = new TIniFile("c:/options.ini");
for(int i = 0; i < Checklistbox1->Items->Count; i++)
{
     ini->WriteBool("items",Checklistbox1->Items[i], Checklistbox1->Checked[i]);
}
 
for(int i = 0; i < Checklistbox1->Items->Count; i++)
{
   Checklistbox1->Items[i] = ini->ReadBool("items",Checklistbox1->Items[i], false);
}
Но я не совсем понимаю все эти WriteBool, ReadBool. По этому примеру, как я понял, можно булевые значения записать в какую то переменную строкового типа и уже её записать в БД,а потом так считывать и чекать Checklistbox. Но вот какой тип данных выбрать, и как все же это записать, чтобы работало у меня не хватает на это смелости и знаний.

По моим представлениям должно получиться что-то вроде

C++
1
2
3
4
5
6
7
8
9
10
char stroka;
for(int i = 0; i < Checklistbox1->Items->Count; i++)
{
     stroka->WriteBool("items",Checklistbox1->Items[i], Checklistbox1->Checked[i]);
}
 
for(int i = 0; i < Checklistbox1->Items->Count; i++)
{
   Checklistbox1->Items[i] = stroka->ReadBool("items",Checklistbox1->Items[i], false);
}
Это, естественно, не работает=) А вот довести его до ума уже не знаю с какой стороны и подступиться. Подскажите, пожалуйста, как бы переделать этот код, чтобы работало? Заранее, большое спасибо!

Добавлено через 10 часов 53 минуты
Почти справился, ответ где-то близко, кручусь вокруг него, но пока вылазит ошибка))
"range check error"
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//считывание
int i;
AnsiString  str;
for (i = 0; i < CheckListBox1->Items->Count-1; i++)
  {
   if  (CheckListBox1->Checked[i])
       { str += IntToStr(i); }
  }
 
//занесение обратно
 for (i = 0; i < str.Length()-1; i++)
    {
     CheckListBox2->Checked[str[i]+1] = true;
    }
*CheckListBox1 и 2 абсолютно идентичны, второй взял просто для проверки

Добавлено через 23 минуты
Ну вот и все)) может, конечно, корявенько и, как говорится, по быдлокодерски, но работает))

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
//считывание
int i;
AnsiString  str;
for (i = 0; i < CheckListBox1->Items->Count-1; i++)
  {
   if  (CheckListBox1->Checked[i])
       { str += IntToStr(i); }
  }
//занесение обратно
 for (i = 1; i < str.Length()+1; i++)
    {
    CheckListBox2->Checked[StrToInt(str[i])] = true;
    }
Вопрос получился совсем не по БД, прошу прощения))
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.12.2014, 12:17
Ответы с готовыми решениями:

Выборочная отправка полей таблицы в MS Word, отмеченных в CheckListBox
Допустим, мы имеем одну таблицу, в которой, к примеру, 3 поля. (используем ADOConnection + ADOQuery +DataSource + DBGrid) Есть форма, на...

DBLookupcombobox, обратный процесс
Я связал DBLookupCombobox c базой. Расставил параметры key field и list field, key=id, field=national_name. В таблице SQL у меня...

CheckListBox аналог делфийского и CheckState для 1го CheckBox в CheckListBox
Здравствуйте. 1. Проблема в том что в c# CheckListBox не похож на делфийский. Например нельзя получить индекс элемента где была...

1
Модератор
 Аватар для D1973
9929 / 6466 / 2457
Регистрация: 21.01.2014
Сообщений: 27,422
Записей в блоге: 3
04.12.2014, 12:49
Вот пример посмотри (для RAD Studio XE...)
Вложения
Тип файла: rar XE3.rar (91.0 Кб, 24 просмотров)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.12.2014, 12:49
Помогаю со студенческими работами здесь

Дата в Access. Занесение данных в таблицу
Создаю форму для ввода данных в таблицу. Как в поле Дата заявки сделать чтобы проставлялась текущая дата я разобралась. Но при нажатии...

Занесение данных в базу access через VB
Здравствуйте, подскажите пожалуйста как сделать в VB добавление данных в базу в таблицу &quot;Договора намерений&quot; с формы 2 и что бы...

Отмеченные строки ChecklistBox'a вывести в другой ChecklistBox
Собственно вопрос в заголовке. Код по сути написан: void __fastcall TForm1::CheckListBox1ClickCheck(TObject *Sender) { int i; ...

Матрица. Вычислить сумму отмеченных элементов
Для матрицы К(п х п), где п - нечетное число, вычислить сумму отмеченных элементов: |xxxxx| |.xxx.| |..x..| ...

Вычислить сумму элементов, отмеченных синим
Помогите решить задачу на Паскаль. Дано нечетное натуральное n&gt;8 и целое k. Создать квадратную матрицу порядка n следующего вида....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru