Модераторы: Akina

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> свойство CanGrow поля отчёта 
:(
    Опции темы
kapbepucm
Дата 6.11.2007, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



В стандартном поле отчёта есть свойство CanGrow. Возможно ли програмно узнать на сколько поле "хочет вырати", если CanGrow=False?

Добавлено через 1 минуту и 30 секунд
Мне не надо расширять строки, только хочу цифры знать.


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 6.11.2007, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



Цитата(kapbepucm @  6.11.2007,  18:27 Найти цитируемый пост)
Возможно ли програмно узнать на сколько поле "хочет вырати", если CanGrow=False?

Самое простое - установить в true, спросить, какие у него получились размеры, после чего вернуть его (в т.ч. размеры) в первоначальное состояние.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 7.11.2007, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



"Копаясь" в этом деле, получил странный эффект. При установке CanGrow=True отчёт печатает пустые поля. Чем такое может быть вызвано?


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 7.11.2007, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



Цитата(kapbepucm @  7.11.2007,  12:06 Найти цитируемый пост)
При установке CanGrow=True отчёт печатает пустые поля.

Refresh/Repaint/Requery/Re(чего там еще бывает)...
Да! а свойство-то меняем в режиме макета?


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 7.11.2007, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Akina @  7.11.2007,  11:08 Найти цитируемый пост)
свойство-то меняем в режиме макета?
Режим Design view. Только вот незадача, куда я ни писал RepaintObject, так всё равно не хочет показывать написанное в поле, но всё становится на своё место, как только CanGrow=False


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 7.11.2007, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



kapbepucm, т.е. если я правильно понимаю:
  • Report.Open Design
  • CanGrow=True
  • OldSizes.Store
  • Report.Save
  • Report.Close
  • Report.Open View
  • NewSizes.Store
  • Report.Close
  • Report.Open Design
  • CanGrow=False
  • OldSizes.Restore
  • Report.Save
  • Report.Close
не отрабатывает? или какие-то этапы пропущены?


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 7.11.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Нет, всё ещё проще:

1)вариант
Report.Open Design
CanGrow=False
Report.Save
Report.Close
Report.Open View
Здесь вижу всё

2)вариант
Report.Open Design
CanGrow=True
Report.Save
Report.Close
Report.Open View
Здесь вижу только те поля у которых CanGrow=False

Добавлено через 1 минуту и 11 секунд
И делаю пока всё ручками


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
kapbepucm
Дата 14.4.2009, 09:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Проблема несколько видоизменилась. Теперь надо узнать "насколько выросло" поле в "повторяющейся" секции Detail. Изначально у поля стоит значение CanGrow=True. Но в событии OnFormat этой секции свойство Height показывает старое значение. Вопрос: как узнать новое?


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
bopoha
Дата 14.4.2009, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

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



Цитата(kapbepucm @  14.4.2009,  09:20 Найти цитируемый пост)
Вопрос: как узнать новое? 

На событии OnPaint()
PM MAIL WWW ICQ Skype GTalk   Вверх
Akina
Дата 14.4.2009, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



Цитата(kapbepucm @  14.4.2009,  10:20 Найти цитируемый пост)
в событии OnFormat этой секции свойство Height показывает старое значение. Вопрос: как узнать новое? 

Получать его в методе, вызываемом, когда форматирование уже завершено.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 14.4.2009, 12:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Akina @  14.4.2009,  11:47 Найти цитируемый пост)
Получать его в методе, вызываемом, когда форматирование уже завершено.
А раньше нельзя? Суть проблемы в том, чтобы узнать высоту самого длинного поля и установить эту высоту всем рядом стоящим полям. После форматирования будет поздно.

Псевдографически у меня такой отчёт:
Код
+=========+=========+=======+
|DataA1   |DataB1   |DataC1 |
+---------+---------+-------+
|DataA2   |DataB2   |Very   |
|         |         |long   |
|         |         |DataC2 |
+---------+---------+-------+
|DataA3   |Very     |DataC3 |
|         |long     |       |
|         |DataB3   |       |
+---------+---------+-------+
|DataA4   |DataB4   |DataC4 |
+=========+=========+=======+
У каждого поля есть Border. Всё вместе- должна получиться красивая таблица.

Это сообщение отредактировал(а) kapbepucm - 14.4.2009, 13:07


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 14.4.2009, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



Ну вообще-то так и должно получиться без всяких дополнительных телодвижений...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 14.4.2009, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Akina @  14.4.2009,  13:12 Найти цитируемый пост)
Ну вообще-то так и должно получиться без всяких дополнительных телодвижений...
Получается так:
Код
+=========+=========+=======+
|DataA1   |DataB1   |DataC1 |
+---------+---------+-------+
|DataA2   |DataB2   |Very   |
+---------+---------+long   |
                    |DataC2 |
+---------+---------+-------+
|DataA3   |Very     |DataC3 |
+---------+long     +-------+
          |DataB3   |
+---------+---------+-------+
|DataA4   |DataB4   |DataC4 |
+=========+=========+=======+


Добавлено через 1 минуту и 44 секунды
"Растёт" только то поле, которое длинное, а надо, чтобы все.


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 14.4.2009, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

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



А зачем бордюр у ПОЛЯ? Прорисуй прямые между полями и по верху области данных и подножки - они и образуют тебе сетку.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

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


Опытный
**


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

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



Гмм... Но всё равно, чтобы нарисовать вертикальную линию, своиство Height  кое-где надо увеличивать. Проблема осталась
Цитата(kapbepucm @  14.4.2009,  12:48 Найти цитируемый пост)
А раньше нельзя? Суть проблемы в том, чтобы узнать высоту самого длинного поля и установить эту высоту всем рядом стоящим полям. После форматирования будет поздно.
только height надо менять у линии smile
Проблема: нужный вертикальный рамер можно узнать, когда уже поздно менять (OnPrint). Менять что-либо в секции возможно только в OnFormat- но там невозможно узнать, насколько надо менять. Какой выход?


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS Access"
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

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

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

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


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

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


 




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


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

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