![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Dimannn |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 318 Регистрация: 14.4.2005 Где: Владимир Репутация: нет Всего: 1 |
Мне нужно сделать программу, которая будет на бланке печатать нужные мне данные.
Сложность заключается в том, что нужные данные должны будут быть напечатанными именно в месте пропуска на бланке. Как удобнее всего это сделать? Или, на худой конец, как X и Y на форме конвертить в сантиметры? Это сообщение отредактировал(а) Dimannn - 2.6.2006, 20:33 -------------------- Хотите быстро и без проблем опубликовать вашу программу в сети за 5 минут? Тогда потратьте пару минут чтобы посмотреть, что предлагает OpenProject.org.ru |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 31 Всего: 88 |
Ну для этого использовать свойство формы PixelsPerInch. А потом дюймы перевести в сантиметры. Это номер раз.
Потом увидеть, что это касается только одной из осей. То есть они там на борланде исходили из предположения, что у монитора квадратная точка. Что не факт. Поэтому - номер два: набрать в тексте любого метода формы PixelsPerInch, и в контекстном меню этого слова выбрать FindDeclaration и продолжать поиск по юниту пока не наткнешся на такой код
Из этого сделать вывод что для другой оси можно взять GetDeviceCaps(DC, LOGPIXELSX); А потом хлопнуть себя по лбу и додуматься до номера три: взять не DC := GetDC(0), а контекст устройства от класса TPrinter, потому что бланк будешь вовсе не к экрану монитора прикладывать. Это сообщение отредактировал(а) bems - 2.6.2006, 22:29 -------------------- Обижено школьников: 8 |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 31 Всего: 88 |
-------------------- Обижено школьников: 8 |
|||
|
||||
| dimazu |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 4.3.2006 Репутация: 4 Всего: 5 |
Самое простое - сделать это в QuickReport.
Бланк переведи в WMF format, поставь его как QRImage на QRBand и просто расставь на нем контроли в пропуски. (Не забудь Transparent у контролей поставить в True). Вот и все ... |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |