![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Доброго времени суток всем!
Увы, не могу найти ответа на свой вопрос, сколь бы простым он ни казался. Есть многострочно-многоколоночный, и при этом ещё и невидимый DBGrid. Как из одной из его колонок выдернуть данные в динамический массив? Уточняю вопрос: DBGrid на три колонки отображает постепенно заполняемую базу данных. Нужно из одной из колонок типа autoincrement перенести данные в Ar: array of integer; для последующей работы с этим массивом. Данный DBGrid отображает данные подчинённой таблицы, поэтому просто взять цифры (напр. подсчитав кол-во записей и добавляя в массив циклом) я не могу, хоть поле и автоинкрементное. |
#2
|
||||
|
||||
![]() Я основного не понял. Нафик нужен скрытый DBGrid? Что мешает брать данные напрямую из источника?
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
|||
|
|||
![]() Конечный пользователь не должен видеть этот грид. Для него оно инвизибл. Админ, который редактирует БД - может, а вот пользователю это вредно. Там свои заморочки.
|
#4
|
||||
|
||||
![]() Страдалецъ наверно он клиента пишет или чтото в этом роде
Сори з DBgrid мало работал ничем помочь не могу ![]() Не твори зла, и жизнь повернется к тебе передом ![]() |
#5
|
||||
|
||||
![]() Цитата:
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#6
|
|||
|
|||
![]() мож я и не прав, спору нет.
есть "код дисциплины", есть "код вопроса", есть "вопрос" нужно выдернуть: - либо коды вопросов по конкретной дисциплине в динамический массив; - либо случайный код по конкретной дисциплине в переменную. Но: - во втором случае нужно иметь дополнительное поле флага чтоб знать, задавали уже этот вопрос или же нет, а если в массив - удалили потом код из массива и больше он нас не волнует; -опять же во втором случае определить, какую дисциплину выбрал пользователь ("код дисциплины", "дисциплина") и потом учитывать её каждый раз, когда вопрос рандомно выбирается и выводится на экран - вроде как более хлопотно. ЗЫ: Код использовали в запросе на выбор вопроса, вопрос вывели в лэйбл и удили из массива код |
#7
|
|||
|
|||
![]() Или скажите хотя бы почему не работает:
with TStringGrid(DBGrid1) do begin EE:=Cells[1, 1]; end; Ведь если взять левый стринггрид EE:=StringGrid1.Cells[1, 1];, то всё в переменную прекрасно передаётся Последний раз редактировалось ainagul, 03.05.2010 в 11:23. |
#8
|
|||
|
|||
![]() Сам уже решил вопрос... Таким вот макаром (фрагмент кода, мо кому надо будет):
Код:
i:=Form2.Table2.RecordCount; //общее кол-во записей j:=0; //индекс элемента массива RecNum:=1; //номер записи в таблице БД while RecNum<=i do //ставил RecNum:=0; whileRecNum<i - некорректно begin Form2.Table2.RecNo:=RecNum; SetLength(qnumarray, i); //задаём длину динамического массива с нужными данными qnumarray[j]:=Form2.Table2.FieldByName('Код вопроса').AsInteger; j:=j+1; RecNum:=RecNum+1; end; Последний раз редактировалось Admin, 03.05.2010 в 15:08. |