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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Непостоянство onPaint'а 
:(
    Опции темы
Royan
Дата 21.9.2002, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


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

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



Суть дела такова. из onPaint выводиться приветствие. Далее я последовательно, построчно читаю файл. Соответственно, прочитав строчку, я хочу ее вывести в рабочую область окна (опробовано CPaintDC и CClientDC) через TextOut & DrawText и ни никего не видно (цвет текста: черным по белому), отмечю, что через MessageBox весь прочитаный текст очень хорошо виден. Да и при любом изменении размеров окна и т.п. действиям, все что пришло из файла сотрется приветствием из onPaint'а (ведь так?)

По сему вопрос а как правильно выводить текст в окно, и что делать, чтобы оно там все время оставалось и никакие перерисовки ничего не терли.

Может кто-нибудь знает способ более толкового решения?


--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
suborg
Дата 23.9.2002, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Грузить из файла текст надо в отдельной функции, с сохранением в память так, чтобы при вызове OnPaint _всё_, что должно быть нарисовано в окне, включая текст, отрисовалось заново. Если ты рисуешь что-то в окне не из OnPaint, то при следующем OnPaint оно затрётся (вызывается OnEraseBackground). Ну или что ни будь в этом духе...
PM MAIL WWW ICQ   Вверх
Royan
Дата 24.9.2002, 00:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


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

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



А что, если я вообще onPaint инициализировать не буду. Скажем, возможен ли вариант когда, то что вывелось не перерисовывается, а например, запоминатеся как картинка и вставляется по нулевым координатам рабочей области?

Хотя может действительно проще так выводить?
PM MAIL MSN   Вверх
suborg
Дата 24.9.2002, 05:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



можно, только вот вставлять опять же придется через OnPaint ;-)
Ну, можно это сделать неявно - поместить в окно класс битмапа, рисовать в него, тогда обновлять будет OnPaint битмапа. Грубо сказано, но смысл здесь.
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

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

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


 




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


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

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