IPB
ЛогинПароль:

> 

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Пара вопросов, Окно WinApi
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Денис

Репутация: -  0  +


Люди, подскажите, пожалуйста:
Вот, виновник:

procedure Header;

var

Font:HFont;
Ps:PaintStruct;
Dc:HDc;
R:Rect;

begin

Font:=CreateFont(36,12,
0,0,
710,0,0,0,
DEFAULT_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
PROOF_QUALITY,
DEFAULT_PITCH or FF_DONTCARE,
'Impact');


Dc:=BeginPaint(Back,@Ps);

R.Left:=10;
R.Top:=96;
R.Right:=100;
R.Bottom:=196;

SelectObject(Dc,Font);

SetBkMode(dc,Transparent);

SetTextColor(Dc,RGB(192,192,192));

DrawText(Dc,'Pascal',-1,@R,DT_SINGLELINE or DT_TOP);

R.Left:=12;
R.Top:=94;
R.Right:=112;
R.Bottom:=194;

SetTextColor(Dc,RGB(0,0,250));

DrawText(Dc,'Pascal',-1,@R,DT_SINGLELINE or DT_TOP);

EndPaint(Back,Ps);

end;




Результат этой процедуры - надпись 'Pascal' с чем-то похожем на тень. Рисуется она у меня нормально, проблема в том, что, если свернуть окно или просто подвигать над ним другое окно какое-нить, то надпись эта проподает и не появляется вплоть до перезапуска приложения.
Что скажете? Как это можно исправить?

А ещё: как на окно поместить рисунок (точнее - иконку)? И что значит первый параметр в LoadIcon() или LoadImage()?

Спасибо за ответы

Сообщение отредактировано: rzr -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Все еще нужен. Прикрепи файл, который можно откомпилировать и запустить.

Вообще-то надо обрабатывать WM_PAINT, оно посылается приложению, когда нужно перерисовать окно. Вот тогда и нужно перерисовывать не только само окно, а и хидер, который ты нарисовал...
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.03.2024 22:56
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name