Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
11 / 11 / 2
Регистрация: 04.03.2012
Сообщений: 128

Печать из диалогового приложения mfc

23.06.2012, 02:49. Показов 2375. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Подскажите пожалуйста можно ли печатать инфу из диалогового окна и
делать её предварительный просмотр?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.06.2012, 02:49
Ответы с готовыми решениями:

Функция вызываемая после создания диалогового окна (MFC)
Добрый день Есть дилоговое приложение. Когда выполняются "долгие и тяжелые" операции, то форма "залипает". Вместо...

Отправка на печать без диалогового окна
У принтера Xerox 3325 есть возможность защищенной отправки на печать т.е. пользователь на ПК в настройках принтера выбирает соответствующий...

Печать из WebBrowser без диалогового окна
Добрый день Подскажите, такой вопрос. Если мне надо из Браузера (TWebBrowser) распечатывать текст. Кнопки "на печать"...

5
32 / 30 / 6
Регистрация: 21.06.2012
Сообщений: 91
23.06.2012, 07:27
Стандартного решения нет. Но тут есть пример.
1
11 / 11 / 2
Регистрация: 04.03.2012
Сообщений: 128
23.06.2012, 14:43  [ТС]
Сделал таким образом:в диалоге 2 edit'а ,там же создал кнопку на вывод печати, как я понимаю,
с помощью DrawText() можна запихнуть на печать cstring'и из edit'ов, верно?Только с параметрами у DrawText() непонятно).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
void Students::OnBnClickedButton1()
    {
    CPrintDialog cp(FALSE);                         
    if (cp.DoModal()==IDOK)                         
        {
        CDC PrintDC;                                
        PrintDC.Attach(cp.GetPrinterDC());              
        DOCINFO infStru;                            
        ::ZeroMemory (&infStru, sizeof (DOCINFO));          
        CString title=L"step 45 ";
        infStru.cbSize = sizeof (DOCINFO);                  
        infStru.lpszDocName=title;
        infStru.lpszOutput=NULL;
        if (PrintDC.StartDoc(&infStru )==-1)AfxMessageBox(L"Error StartDoc") ;  
 
        
        PrintDC.MoveTo(10,10);
                PrintDC.DrawText(m_year,-1,RECT|DT_VCENTER) ;   //проблема с параметрами  
        
        if (PrintDC.EndPage()<0) AfxMessageBox(L"Error EndPage");       
        if (PrintDC.EndDoc()==0) AfxMessageBox(L"Error EndDoc");        
        PrintDC.Detach();                           
        }
    }
0
32 / 30 / 6
Регистрация: 21.06.2012
Сообщений: 91
23.06.2012, 15:26
1) строка
2) нужно определить прямоугольник, в котором будет рисоваться текст.
C++
1
CRect textRect(0, 0, 200, 300);
3) флаги. тут вроде все правильно
0
11 / 11 / 2
Регистрация: 04.03.2012
Сообщений: 128
23.06.2012, 15:42  [ТС]
т.е получается так?
Code
1
2
CRect textRect(0, 0, 200, 300);
PrintDC.TextOut(10,10,m_year);
0
32 / 30 / 6
Регистрация: 21.06.2012
Сообщений: 91
23.06.2012, 17:48
да. текст можно выводить и так. просто в этом случае меньше возможности для задания специфических параметров.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.06.2012, 17:48
Помогаю со студенческими работами здесь

Печать фотографии без диалогового окна
Здравствуйте, подскажите возможно ли напечатать фотографию/документ без диалогового окна? и как это сделать? просто задача стоит на...

Печать BitMap без диалогового окна
Здравствуйте. Я прочитал и на вашем форуме и в книгах много примеров о том как запустить печать, но у меня ничего не печатает или выдает...

Закрытие приложения при закрытии диалогового окна
Очередная микротема от новичка в Qt) Подскажите как закрыть приложение при закрытии диалогового(второго) окна на крестик? Я так...

Создание диалогового приложения в среде разработки Delphi 7
Оцените максимальную мощьность, выделяемую в виде тепла при экстренном торможении автомобиля по следующей формуле: ...

Вывод диалогового окна при запуске приложения
Всем доброго времени суток. Есть 41 компьютер. На них всех нужно сделать так, что бы при запуске .exe программы выводилось диалоговое окно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru