C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Объединение заголовка в DBGridEh, (что-то никак...)
dust
Отправлено: 15.10.2005, 23:01


Не зарегистрирован







Есть у меня грид такого вида:
CODE

-------------------------------------------------
               |                    Заголовок
Заголовок --------------------------------------
               | заголовок | заголовок | заголовок
--------------------------------------------------
 данные   |   данные   |   данные   |  данные
--------------------------------------------------

А мне надо
CODE

-------------------------------------------------
Заголовок |                    Заголовок
--------------------------------------------------
 данные   |   данные   |   данные   |  данные
--------------------------------------------------

Как ? sad.gif
olegenty
Отправлено: 17.10.2005, 06:39


Ветеран

Группа: Модератор
Сообщений: 2412



вообще-то есть в справке по TDBGridEh, на основном листе, в инфе о компоненте. цитирую:
QUOTE

Complex titles.
  To create title corresponding to several columns, the label of the field or caption of title of the column must consist of several parts divided by sign "|", where every part is same for several columns. Other fields or captions must contain same text in corresponding parts. Set also DBGridEh.UseMultiTitle property to True.

For instance:
   Field1.DisplayLabel := 'Title1|SubTitle1'; or DBGridEh.Columns[0].Title.Caption := 'Title1|SubTitle1';
   Field2.DisplayLabel := 'Title1|SubTitle2'; or DBGridEh.Columns[1].Title.Caption := 'Title1|SubTitle2';
dust
Отправлено: 17.10.2005, 21:19


Не зарегистрирован







2 olegenty
QUOTE

Field1.DisplayLabel := 'Title1|SubTitle1'

НЕТ НИКАКОГО SubTitle, ЕСТЬ ТОЛЬКО Title !
Нарисую ещё раз. Есть титлы с сабтитлами:
CODE

                 |                        Title B
 Title A         -------------------------------------
                 | SubTitle 1 | SubTitle 2 | SubTitle 3
---------------------------------------------------
данные        |   данные   |   данные  |  данные

А мне надо убрать SubTitle1, SubTitle2, SubTitle3 и оставить Title B, т.е. получить
CODE

  Title A   |                    Title B
--------------------------------------------------
данные    |   данные   |   данные   |  данные


Understand ? smile.gif
olegenty
Отправлено: 18.10.2005, 06:39


Ветеран

Группа: Модератор
Сообщений: 2412



ты даже цитату полностью прочесть не удосужился, не то что сам в справку слазить.
Set also DBGridEh.UseMultiTitle property to True.

Understand? Или слабо самому скомбинировать заголовки?
olegenty
Отправлено: 18.10.2005, 07:06


Ветеран

Группа: Модератор
Сообщений: 2412



Вот те примерчик, чё получилось.

Присоединить изображение

Присоединить изображение

AVC
Отправлено: 18.10.2005, 08:15


Ветеран

Группа: Модератор
Сообщений: 1583



olegenty — не кипятись.
Если я правильно понял, то dust интересует так (зачем то smile.gif ):
user posted image
olegenty
Отправлено: 18.10.2005, 08:28


Ветеран

Группа: Модератор
Сообщений: 2412



тогда ручная прорисовка.
AVC
Отправлено: 18.10.2005, 08:31


Ветеран

Группа: Модератор
Сообщений: 1583



Или объединение с форматированием колонок на уровне запроса.
olegenty
Отправлено: 18.10.2005, 08:48


Ветеран

Группа: Модератор
Сообщений: 2412



можно и с форматированием, но тогда всё равно по сути ручная прорисовка в OnDrawColumnCell + нехилый напряг с редактированием (контролы рисовать самому, часть отформатированного содержимого туда помещать, потом оттуда обратно в ячейку...)
olegenty
Отправлено: 18.10.2005, 08:54


Ветеран

Группа: Модератор
Сообщений: 2412



ну чем не вариант?


Присоединить изображение

Присоединить изображение

AVC
Отправлено: 18.10.2005, 09:01


Ветеран

Группа: Модератор
Сообщений: 1583



2olegenty ты не понял.
с форматированием колонок на уровне запроса
Типа так:
Select
a1
,(Pad(To_Char(a2,'9.9'),3) || ' ' || Pad(a3,10) || ' ' || Pad(a4,5) ) as a12
From ...

Смысл тот-же, картинка несколько хуже.
Ладно. Пусть сам выбирает красота или простота. smile.gif
olegenty
Отправлено: 18.10.2005, 09:23


Ветеран

Группа: Модератор
Сообщений: 2412



да я понял, что на уровне запроса, но для полноценного грида результат запроса надо разобрать в OnDrawColumnCell и нарисовать несколько ячеек smile.gif
dust
Отправлено: 18.10.2005, 20:10


Не зарегистрирован







Hi, friends !
Прошу прощения за то, что отнял у вас время: думал, просто скажете — можно сделать это штатными средствами EhLib или нельзя.
AVC совершенно правильно понял вопрос, хотелось сделать именно так (там результаты трёх параллельных испытаний под одной шапкой). Жаль, что нельзя, выбираю простоту — наживать потенциальный геморрой с последующим вступлением в Proctology Club неохота. smile.gif
Особенно понравилось выражение olegenty — "Sub Fucking Title" (хотя я, наверное, сказал бы "The Fucking SubTitle"):
QUOTE
Вот те примерчик, чё получилось.

Это и у меня получилось — см. рис. № 1...
А потом даёт ту же картинку с пустыми SFT (или TFST):
QUOTE
ну чем не вариант?

Не сочтите за хамство, что не участвовал в обсуждении своего вопроса — днём никакой возможности нет... Но вам большое спасибо — такого живого обсуждения здесь давно не видел.

Вернуться в Работа с базами данных в C++Builder