Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> EhLib 
:(
    Опции темы
Garmahis
Дата 18.4.2005, 19:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



для моего проекта потребовалась таблица связанная с данными обладающая большими возможностями чем стандартная. По описанию мне больше всего подходит DBGridEh. Установил библиотеку весь день мучаюсь с этой таблицей но некоторые самыке нужные настройки не получаются.
1. Как сделать что бы в самой таблице если текст длиннее колонки то строка (не все строки а именно эта строка) становилась шире и текст бы переносился?
2. При нажатии на титул строки сортировались в прямом или обратном порядке. Ато стрелочка появляется а строки ни хрена не сортируются.
3. Подстановка значения. Хм не помню как это по русски smile но вобщем в базе данных значению могут меняться от 0 до 10 и если значение 0 то в таблице пишется например удалён если 1 то пишется добален и тд.
4. Как в компоненте PrintDBGridEh задать альбомную ориентацию? В предворительном просмотре это я нашёл как делать а можно поставить это просто по умолчанию?
5. Как с помощью компонента PrintDBGridEh распечатать многостраничную таблицу чтобвы в начале каждого листа шёл титл?
Помогите пожалуйста кто работал с этими компонентами!
PM   Вверх
Alex
Дата 18.4.2005, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

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



Модератор: Пожалуйста, один топик - один вопрос.


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Петрович
Дата 19.4.2005, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Почитай повнимательнее хелп на EhLib, особенно первую страницу описания TDBGridEр, причем до конца. Там некоторые из твоих вопросов освещены.
Если какие вопросы еще останутся, задавай.


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Akella
Дата 20.4.2005, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Я так сортирую
Код

procedure TfmMain.DBGridEh1TitleClick(Column: TColumnEh);
begin
  if Column.Index=0 then begin
   tPrep.IndexName:='idxPNamePPrice';
   Column.Title.SortMarker:=smDownEh;
  end;

  if Column.Index=1 then begin
   tPrep.IndexName:='idxPPricePName';
   Column.Title.SortMarker:=smDownEh;
  end;

  if Column.Index=2 then begin
   tPrep.IndexName:='idxPProducer';
   Column.Title.SortMarker:=smDownEh;
  end;

  if Column.Index=3 then begin
   tPrep.IndexName:='idxPApt';
   Column.Title.SortMarker:=smDownEh;
  end;
  if Column.Index=4 then begin
   tPrep.IndexName:='idxPDateTimeDesc';
   Column.Title.SortMarker:=smUpEh;
  end;

  case Column.Title.SortMarker of//âûáîð íàïðàâëåíèÿ ñîðòèðîâêà ìàðêåðà
    smNoneEh: Column.Title.SortMarker := smDownEh;
  end;//case
end;


Добавлено @ 10:04
отностильено печати
Код

  PrintDBGridEh1.BeforeGridText.Clear;
  PrintDBGridEh1.BeforeGridText.LoadFromFile('deftitle.rtf');

Добавлено @ 10:05
Цитата(Garmahis @ 18.4.2005, 19:29)
4. Как в компоненте PrintDBGridEh задать альбомную ориентацию? В предворительном просмотре это я нашёл как делать а можно поставить это просто по умолчанию?

Есть кнопка "Настройка принтера"
PM MAIL   Вверх
Akella
Дата 20.4.2005, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Цитата(Garmahis @ 18.4.2005, 19:29)
3. Подстановка значения. Хм не помню как это по русски  но вобщем в базе данных значению могут меняться от 0 до 10 и если значение 0 то в таблице пишется например удалён если 1 то пишется добален и тд.


Дывжды по компоненту TTable -> Выбираем поле в редакторе полей, переходим в инспектор объектов -> закладка события, щелкаем дважды по событию OnGetText

Код


procedure TfmMain.tTempTAptGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin
  if DisplayText then
     if StrToIntDef(Text,0) > 1 then Text := '99';
end;


Код

procedure TForm1.Table1IDGetText(Sender: TField;
  var Text: OpenString; DisplayText: Boolean);
var
  s: string;
begin
  s := (Sender as TStringField).Value;
  case s[1] of
    'A': Text := '1';
    'B': Text := '2';
    'C': Text := '3';
  else
    Text := '9'
  end;
end;

procedure TForm1.Table1IDSetText(Sender: TField; const Text: string);
var
  s: string;
begin
  case Text[1] of
    '1': s := 'A';
    '2': s := 'B';
    '3': s := 'C';
  else
    s := 'Z'
  end;
  (Sender as TStringField).Value := s;
end;


Добавлено @ 10:24
Цитата(Garmahis @ 18.4.2005, 19:29)
1. Как сделать что бы в самой таблице если текст длиннее колонки то строка (не все строки а именно эта строка) становилась шире и текст бы переносился?


Дважды щелкаем по сетке -> Выбираем в редакторе колонок нужную колонку, в инспекторе объектов ставим ей WordWrap:=True, а свойство RowLines самой таблице ставим 2 или больше.

Это сообщение отредактировал(а) dsergey - 20.4.2005, 10:26
PM MAIL   Вверх
Петрович
Дата 20.4.2005, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(dsergey @ 20.4.2005, 10:57)
Я так сортирую ....

Такой способ сортировки применим только к наборам данных построенных на tTable.
Кроме того, он не позволяет делать сортировку по нескольким полям.



--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Garmahis
Дата 20.4.2005, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Большое спасибо! Тока я чёй-то не впиливаю.
1.
Цитата(dsergey @ 20.4.2005, 09:57)
tPrep.IndexName

Что такое tPrep? Дельфя ругается говорит не знаю что такое.
2. Настройка то принтера есть. но вопервых в этом компоненте я нашёл возможность менять ориентацю бумаги только через привью. а во вторых мне не надо чтобы при нажатии кнопки печать вызывались дополнительно какие ни будь настройки. Эта таблица всегда должна печататься на альбомном листе...
3. Я пользуюсь АдоКуэри.

Это сообщение отредактировал(а) Garmahis - 20.4.2005, 12:12
PM   Вверх
Akella
Дата 20.4.2005, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



tPrep ЭТО TTable

Цитата(Garmahis @ 20.4.2005, 12:10)
Я пользуюсь АдоКуэри.

Переделывай запросами "под себя"

Это сообщение отредактировал(а) dsergey - 20.4.2005, 12:38
PM MAIL   Вверх
DimW
Дата 20.4.2005, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1330
Регистрация: 24.2.2005
Где: Орёл

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



Цитата
Дважды щелкаем по сетке -> Выбираем в редакторе колонок нужную колонку, в инспекторе объектов ставим ей WordWrap:=True, а свойство RowLines самой таблице ставим 2 или больше.


у меня не получилось, вернее получилось, но строка (поля которой влезают в границу поля) все равно остается широкой?????????????????????????????????????????

dsergey или Петрович вчем прикол?

PM MAIL ICQ   Вверх
StayAtHome
Дата 21.4.2005, 00:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Домосед
**


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

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



Касательно сортировки.
Ребята, а вы читали файл .\EhLib\DataService\readme.txt?
Лично я пользуюсь методом, который там описан. Все сортируется автоматически!
PM MAIL WWW ICQ YIM   Вверх
Петрович
Дата 21.4.2005, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(StayAtHome @ 21.4.2005, 01:55)
Ребята, а вы читали файл .\EhLib\DataService\readme.txt?

Да не любит у нас народ читать. Мы же не читатели, мы писатели. smile
Добавлено @ 15:28
Цитата(DimW @ 20.4.2005, 15:24)
Цитата
Цитата
Дважды щелкаем по сетке -> Выбираем в редакторе колонок нужную колонку, в инспекторе объектов ставим ей WordWrap:=True, а свойство RowLines самой таблице ставим 2 или больше.

у меня не получилось, вернее получилось, но строка (поля которой влезают в границу поля) все равно остается широкой?????????????????????????????????????????

Естественно. Ты же указал высоту строк "2 или больше".
На скоько я помню, DBGridEh не позволяет делать строки разной высоты.


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Garmahis
Дата 21.4.2005, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата
Естественно. Ты же указал высоту строк "2 или больше".
На скоько я помню, DBGridEh не позволяет делать строки разной высоты.

А ктонить знает компонент который бы позволял?
PM   Вверх
Петрович
Дата 21.4.2005, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



А что, просто вывод хинта для ячеек в которых текст не помещается в отведенном пространстве не катит?


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Garmahis
Дата 22.4.2005, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



К сожалению не катит совсем... Кроме того таблицу надо распечатывать....
PM   Вверх
Петрович
Дата 22.4.2005, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Тады беда.
Добавлено @ 12:27
Посмотри DevExpress. Может тамошний грид может такое.


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

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

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

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


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

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


 




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


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

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