powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / не сохраняются данные в cxGrid
25 сообщений из 26, страница 1 из 2
не сохраняются данные в cxGrid
    #40113162
neteurt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день

Есть написал код для вставки записей в cxGrid из файла
Код: pascal
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.
procedure TForm1.Button1Click(Sender: TObject);
var
L_file:TStringlist;
L_String:TStringlist;
i:integer;
begin
L_file:=TStringList.Create;
L_string:=TStringList.Create;
L_string.delimiter:='|';
L_string.strictdelimiter:=true;
if OpenDialog1.Execute then
begin
L_file.LoadFromFile(OpenDialog1.FileName);
 end;

 for i:=0 to L_file.Count-1 do
begin
  L_string.delimitedtext:=L_file[i];

      cxGridTableView1.DataController.BeginUpdate();
      try

        cxGridTableView1.DataController.RecordCount := cxGridTableView1.DataController.RecordCount + 1;
        cxGridTableView1.DataController.Values[cxGridTableView1.DataController.RecordCount-1, cxGridColumn1.Index] := L_string[1]; //'Column1'; // если строковая
        cxGridTableView1.DataController.Values[cxGridTableView1.DataController.RecordCount-1, cxGridColumn2.Index] := L_string[2];//'нам жопа1';    // для CalcEdit ячейки
        cxGridTableView1.DataController.Values[cxGridTableView1.DataController.RecordCount-1, cxGridColumn3.Index] := L_string[3];//'нам жопа2'; // для CheckBox ячейки

      finally
        cxGridTableView1.DataController.EndUpdate();
      end;

end;

L_file.free;
L_string.free;

end;


данные успешно добавляются(обвел черной линией), только при следующем входе в программе они пропадают, почему?
Запись же которую добавил вручную, самая первая запись на скриншоте(правой кнопкой на компоненте cxGrid и команда "Layaout and Data Editor") хранятся постоянно, даже если перезайти в программу. Как сделать, чтобы файлы добавленные из файла тоже постоянно хранились?
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113165
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а разве Apend + Post не нужны?
а где вообще хранятся данные? в базе?

Судя по типу сетки (TcxGridTableView), нет привязки к базе. Как хранятся данные пока программа закрыта?
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113171
neteurt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
X11
а разве Apend + Post не нужны?
а где вообще хранятся данные? в базе?

Судя по типу сетки (TcxGridTableView), нет привязки к базе. Как хранятся данные пока программа закрыта?


я по это и задал вопрос, чего не хватает. Привязке к базе нету. grid ни с чем не связан
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113177
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. ты даже не догадываешься, что данные хранятся в памяти (RAM) пока живет программа, а при закрытии все уничтожается?
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113178
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt
чего не хватает.


не хватает программиста, который напишет процедуры сохранения данных и загрузки
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113196
neteurt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
X11,

если вы не можете дать действенный совет, а пришли только постебатся, тогда прошу не засорять тему
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113241
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы данные в Грид пихаете по нажатию кнопки ?
После перезапуска программы, не мешало бы снова нажать кнопку, чтобы сработала ваша процедура и запихнула данные в грид.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113548
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt
действенный совет


я же дал: нужны процедуры/функции сохранения данных куда-то там... куда вы хотите, в файл например...
ну потом процедуры загрузки из файла

очень странный вопрос задаете вы, как программист
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113650
neteurt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
X11,

Grid разве данные не хранит? я же могу вручную данные туда добавить и они будут там хранится
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113655
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt
я же могу вручную данные туда добавить и они будут там хранится
neteurt
только при следующем входе в программе они пропадают
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113667
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt
Grid разве данные не хранит? я же могу вручную данные туда добавить и они будут там хранится

Вы открываете Блакнот и пишите туда ТЕКСТ.
Блакнот текст хранит ?
Для сохранения текста вы ЗАПИСЫВАЕТЕ его в фаили и текст хранится там.
Когда вы открываете Блакнот, там вашего текста НЕТ.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113695
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt
X11,

Grid разве данные не хранит? я же могу вручную данные туда добавить и они будут там хранится


Еще раз: сетка без привязки к базе хранит данные в оперативной памяти.

Вам бы лучше начать изучение компьютеров с азов. А вы программировать уже пытаетесь.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113697
neteurt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хранение данных в файле и постоянно их от туда подгружать не подходит. Файлик должен загрузится один раз. Если данные каждый раз подгружать из файла, его пользователь может отредактировать и тогда целостность данных будет нарушена
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113767
dartveider13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt, вам пытаются объяснить, что cxGrid сам по себе ну никак хранить информацию не может. Да он может хранить структуру, которую вы в него добавили: наименования полей, их порядок, сортировку и т.п. Но вот данные он сохранить не сможет.
Если у Вас нет привязки к какой-то базе данных (или она вам не нужна), попробуйте воспользоваться компонентом TcxMemData от DevExpress. Он там же где и cxGrid. Он легко привязывается к гриду, заполняется через Append/Post. А также для сохранения данных перед закрытием его можно выгружать одной процедурой в бинарный файл dat и также возвращать данные при открытии.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113791
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"В гриде данных нет!" ©
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113811
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger,

в гриде нет, а в cxGridTableView есть , ведь у cxGridTableView есть свой in-memory dataset (DataController)
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113812
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt
хранение данных в файле и постоянно их от туда подгружать не подходит. Файлик должен загрузится один раз. Если данные каждый раз подгружать из файла, его пользователь может отредактировать и тогда целостность данных будет нарушена


1. Задействуй СУБД, например, Firebird или SQLite.
или
2. Шифруй данные при сохранении в файл и дешифруй при загрузке.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40113878
neteurt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dartveider13,

спасибо, остановлюсь на этом варианте. При использование SaveToBinaryFile файл будет хранится в зашифрованном виде
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40114038
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11
white_nigger, в гриде нет, а в cxGridTableView есть , ведь у cxGridTableView есть свой in-memory dataset (DataController)
Спасибо, буду знать)
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40114041
northener
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
neteurt
dartveider13,

спасибо, остановлюсь на этом варианте. При использование SaveToBinaryFile файл будет хранится в зашифрованном виде

Любой юный пионер из кружка любителей программирования легко прочитает и изменит этот файл.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40114046
dartveider13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neteurt, ну если прям открыть его hex-редактором, то прочитать что находится внутри можно. Простым текстовиком его не открыть. Дальше все зависит от того, что там собираетесь хранить и уровень ваших пользователей. Если уж прям все очень секретно, можете попробовать почитать про синхронное шифрование.
В коде ехе зашьете ключ. И будете его использовать для шифровки\расшифровки
Я сам часто пользуюсь MemData, где мне не нужна СУБД. Также очень удобно для временного структурированного хранения данных. Запросы SQL к ней конечно не напишешь, но можно фильтровать данные.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40114051
Anton_1234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
neteurt
хранение данных в файле и постоянно их от туда подгружать не подходит. Файлик должен загрузится один раз. Если данные каждый раз подгружать из файла, его пользователь может отредактировать и тогда целостность данных будет нарушена

можно затолкать файл в ресурсы (т.е. будет храниться в экзешнике), при запуске программы выгружай на диск и оттуда бери
или прямо из ресурсов тягай, не выгружая файл (ни разу так не делал, но наверное можно)

ps. это если файл создан и не меняется

pps. с шифрованием я один раз вступил в непонятное, хранил экселевские файлы, а при открытии эксель их менял, не совпадал МД5 потом... много непонятных приключений было
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40114112
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
northener
neteurt
dartveider13,

спасибо, остановлюсь на этом варианте. При использование SaveToBinaryFile файл будет хранится в зашифрованном виде

Любой юный пионер из кружка любителей программирования легко прочитает и изменит этот файл.


Проблема в том, что если сохранить в бинарник, а потом поменять местами колонки или добавить что-то, или убрать в сетке, вернее в датаконтроллере, то потом просто так не загрузишь, будет несоответствие и ошибка.
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40114134
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11

Проблема в том, что если сохранить в бинарник...

Можно и структуру туда же
...
Рейтинг: 0 / 0
не сохраняются данные в cxGrid
    #40114159
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТС считает что он сможет написать такую программу, которую кто-то захочет взломать? Имхо синдром Неуловимого Джо
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / Delphi [игнор отключен] [закрыт для гостей] / не сохраняются данные в cxGrid
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]