Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Пара вопросов по БД Paradox, Сохранение и отображение таблицы 
:(
    Опции темы
Smoki
Дата 4.6.2006, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 2.6.2006

Репутация: нет
Всего: нет



Здравствуйте !!! 
При работе с БД Paradox (Связь BDE) у меня возникла пара вопросов:

1) Как сделать так чтобы ширина DBGrid'a была по ширине всех его колонок (Как в access).
Я пытался это сделать но оно криво работает (не правилььно отображает).
Вот код:
Код

procedure TForm3.FormCreate(Sender: TObject);
var j,l,t:integer;
begin
t:=0;        
     for j:=0 to DBGrid1.Columns.Count-1 do   // в цикле от 0 до числа столбцов
       begin            
         l:=DBGrid1.Columns[j].Width;        // присваиваем l ширину колонки
         t:=t+l;                
       end;
DBGrid1.Width:=t;            // присваиваем t значению ширины DBGrid
end;

Может кто-нибудь скажет где у меня ошибка. smile 

2)Как можно сохранить таблицу с помощью SaveDialog.
Я знаю что сам Save Dialog ничего не сохраняет, нужно примерно следующее:
Допустим есть таблица,  надо что бы при нажатии кнопки,  появлялось окно savedialog
пишешь там имя файла и таблица (сам файл таблицы с расширением DB) сохраняется под этим именем.

Заранее благодарен. 
PM MAIL   Вверх
Тьма
Дата 4.6.2006, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 22.1.2005
Где: Украина, Винница

Репутация: нет
Всего: 4



по первому : на каждой итерации добавляй к L или к t гдето около 3-5 пикселей, т.к. надо учитывать ширину границы между колонок(с помощью границы изменяется размер колонок мышью)
по второму пункту на вскидку : пишешь в временный файл, а при сохранении переименовываешь 


--------------------
Vir magni ingenii                 
PM MAIL ICQ   Вверх
Golden Hands
Дата 4.6.2006, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Золотой
****


Профиль
Группа: Участник Клуба
Сообщений: 2023
Регистрация: 23.1.2005
Где: Екатеринбург

Репутация: 2
Всего: 83



Цитата(Smoki @  4.6.2006,  17:33 Найти цитируемый пост)
Как можно сохранить таблицу с помощью SaveDialog.

Для этого нужно не просто выводить результаты в grid, а параллельно заносить их в файл.
А сохранение:
Код

var  fileold,  filenew: PChar;
...
if (SaveDialog1.Execute) And (SaveDialog1.FileName<>'') then
  begin
    fileold:=pchar('c:\base.db');  // Файл, в который пишем в ходе работы программы
    filenew:=pchar(SaveDialog1.FileName); // Полный путь к сохраняемому файлу
    copyfile (fileold,filenew,false);  // Копирование
    application.MessageBox('Файл сохранён.','Уведомление',MB_OK+MB_ICONINFORMATION);
  end
else
  application.MessageBox('Файл не выбран!','Предупреждение',MB_OK+MB_ICONWARNING);


 


--------------------
Мы обречены... но только на победу!
Настанет день, и мы построим новый дом.
Внесем в него тепло, что сохранить сумели,
И воскресим все то, что в нас когда-то умерло... © Тень Света
PM MAIL ICQ   Вверх
SPrograMMer
Дата 4.6.2006, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Спамер :)
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 5.11.2004
Где: Краснодар

Репутация: 1
Всего: 6



Цитата(Smoki @  4.6.2006,  14:33 Найти цитируемый пост)
2)Как можно сохранить таблицу с помощью SaveDialog.

а зачем? ты ж не с виртуальным набором данных работаешь. А с конкретной таблицей из твоей дазы данных. В БД Paradox каждый надор данных - это не один, а несколько файлов, вот они тебе уже готовенькие - если уже сильно надо - бери и копируй куда тебе надо.

Добавлено @ 22:49 
Golden Hands, опередил... и даже с реализацией... smile  


--------------------
животное = зверь
законченный гентушник
PM MAIL ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0445 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.