Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.18;
Скачать: CL | DM;

Вниз

DBGridEh забитый в ручную   Найти похожие ветки 

 
Elvis ©   (2005-08-05 12:47) [0]

Я извеняюсь за ламерские вопросы но Делфи это та среда где я пока как рыба в пустыне. Как забить ДБГридЕх в ручную (без подключения к БД и выдирания данных из таблиц БД).
Заранее благодарен!
З.Ы. Желательно маленький примерчик на 5-ом делфи


 
Sergey13 ©   (2005-08-05 12:52) [1]

А зачем тебе это? Это компонент предназначем для работы с БД. Или сурогатами БД - таблицы в памяти, CDS и т.п. (это наводка на ответ)


 
alex_***   (2005-08-05 12:54) [2]

да, забьем его ногами...


 
alex_***   (2005-08-05 12:55) [3]

TClientDataSet используй - он держит наор данных в памяти. А если нужна росто сетка, то можно TStringGrid


 
Elvis ©   (2005-08-05 12:56) [4]

Отвечаю. Данные будут браться не из БД, а наоборот из грида ложиться в БД, а вгриде будет храниться информация которую я програмно выдираю обо всех входящих сообщениях Оутлука. Юзверь показывает в чекбоксах какие сообщения зарегистрировать в БД и нажимает зарегить, вот так. А в ручную я пока хочу забить и проверить кое что.


 
Elvis ©   (2005-08-05 13:05) [5]

НУ не обязательно ДБГридЕх можно просто ДБГрид, просто первый вариант избавляет меня от програмнового встраивания чекбокса в Грид.


 
Sergey13 ©   (2005-08-05 13:05) [6]

2[4] Elvis ©   (05.08.05 12:56)
Ты ее выдираешь и куда то складываешь? Куда? (Это наводка к предыдущей наводке.8-)


 
Elvis ©   (2005-08-05 13:12) [7]

В С шарпе у грида есть свойство Коллектион где я могу забить данные в ручную, а щас пока никуда ничего не складываю, также там есть датасет который указывается как датасоурс И ВСЁ. Здесь же (я повторюсь в делфи я ламер) у грида есть датасорс, у датасорса датасет, у датасета там какой-то тэйбл. Ответьте пожалуйста поконкретнее. Не надо над нами зеленью издеваться.


 
msguns ©   (2005-08-05 13:23) [8]

1. TSringGrid, куда заливать данные хоть из сулии. Позволяет редактировать любые ячейки
2. TCientDataSet с отбалдовым провайдером. Данные опять же из сулеи встромляются в него методами датасета (insert, append, appendrecord). Также позволяет редактить что хошь и как хош. В отличие о стрингрида имеет кучу вкусностей, начиная от сохранения-восстановления датасета в лок.файл и заканивая всякими поисками, фильтрациями и сортровками.
3. Из стрингрида/клиентского датасета записи переносятся в таблицу БД либо запросами (по-джидайски), либо через соотв.компонент типа Table этими же инсертами (по-ламерски)

Если юзать TClentDataSet, то можно обе задачи решить в одном стакане, то бишь в этом же датасете с указанием теперь уже реального провайдера связи с БД.


 
Sergey13 ©   (2005-08-05 13:24) [9]

2[7] Elvis ©   (05.08.05 13:12)
В качестве датасета может быть использовано и таблица в памяти (компонент типа RxMemoryData) или клиентский датасет. Их структура может быть произвольной и они могут быть не привязаны к БД вообще.


 
alex_***   (2005-08-05 13:48) [10]

кстати данные можно хранить в TListView, а потом выкидывать в БД.


 
Elvis ©   (2005-08-05 15:20) [11]

Ну есть все эти методы, чё - то у меня не получается. Приведите если можно маленький примерчик на 5-ом Делфи


 
alex_***   (2005-08-05 15:24) [12]

лучше говори что не получается


 
msguns ©   (2005-08-05 16:05) [13]

>Elvis ©   (05.08.05 15:20) [11]
>Ну есть все эти методы, чё - то у меня не получается.

Что не получается-то ? Копи-пасте на рулит или клаву кофем закоротило ?

>Приведите если можно маленький примерчик на 5-ом Делфи

Мало того, что фиг его знает, "примерчик" чего надо привести, но еще именно на 5 делфе. Укажи еще релиз и номер лицензии ;))


 
alex_***   (2005-08-05 16:08) [14]

и плату за примерчик


 
Elvis ©   (2005-08-05 16:25) [15]

Добавить запись в ваш хвалённый ТКлиентДатаСет
Ему не нравится что у него нету этого ДатаПровайдер, мне же простая штука нужна забить в ручную ДатаСет и вывести его в гриде? Разве это так тяжело? Да и на счёт 5-го делфи ЭТО БЛИН НЕ МОЁ ЖЕЛАНИЕ ПИСАТЬ ПЕРОМ НА ПАПИРУСЕ БЫЛО БЫ МОЁ ЖЕЛАНИЕ НА С ШАРПЕ ВСЁ БЫ УЖЕ БЫЛО БЫ ГОТОВЫМ И Я ТУТ БЫ НЕ ПОЗОРИЛСЯ ЭТИМИ ЛАМЕРСКИМИ ВОПРОСАМИ.


 
Elvis ©   (2005-08-05 16:27) [16]

procedure TestDataGrid (Grid: TDBGridEh; ds2: TClientDataSet);
var S:record
Name: string;
Surname: string;
Test: Boolean;
end;
i: integer;
begin
S.Name := "xxxx";
S.Surname := "XXXXXXX";
S.Test := True;
ds2.Open;
for i := 1 to 5 do
ds2.InsertRecord([S.Name,S.Surname,S.Test]);
//Grid.DataSource := ds2;
//Table2.InsertRecord([S.Name,S.Surname,S.Test]);

ds2.Close;

end;

Вот и копи пэйст


 
alex_***   (2005-08-05 16:37) [17]

если ds2 это TClientDataSet, то надо CreateDataSet дать, а перед этим определить в нем поля. ТКлиентДатаСет такой же наш как и твой


 
Elvis ©   (2005-08-05 16:49) [18]

Спасибо. Всё сразу заработало.


 
evvcom ©   (2005-08-05 16:51) [19]

offtop: a в record-то зачем все загнал? Или так на шарпе принято? :)


 
msguns ©   (2005-08-07 09:15) [20]

>Elvis ©   (05.08.05 16:25) [15]

Нервничать не будем, ладно ?
Прежде чем использовать что-то новое, некисло было б хоть немного почитать. Хотя бы в том же хэлпе (F1), который имхо совсем недурственный.
Тогда бы и не было "ламерских" вопросов.
И дело тут вовсе не в 5-й делфе.


 
Elvis ©   (2005-08-08 10:35) [21]


> Нервничать не будем, ладно ?

Просто надоело, все возмущаются на 5 делфи.

> a в record-то зачем все загнал? Или так на шарпе принято?
> :)

А это так из хелпа вычитал, решил для себя проверить аналогию с ДатаРоу из с шарпа. Аналогии почти нету :(


 
Elvis ©   (2005-08-08 10:37) [22]


> Прежде чем использовать что-то новое, некисло было б хоть
> немного почитать. Хотя бы в том же хэлпе (F1),

Хелп не шибко помогает в этом случае, просто здесь в 5-ом Делфи кучу вещей надо делать вручную, вещи которые студия делает за тебя и я просто не знал Ок?



Страницы: 1 вся ветка

Текущий архив: 2005.09.18;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.039 c
1-1125080010
Ed
2005-08-26 22:13
2005.09.18
ExtractWord


1-1124975239
Lotus
2005-08-25 17:07
2005.09.18
Мониторинг папки


1-1125169052
rolex
2005-08-27 22:57
2005.09.18
Помогите переделать статистичн. вызов DLL в динамичный.


14-1124970763
ArtemESC
2005-08-25 15:52
2005.09.18
Современные форматы файловых систем


2-1123756991
Гость22
2005-08-11 14:43
2005.09.18
Как узнать, какая клавиша нажата в DBNavigator?