Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 21.01.2009, 01:39   #1
Crazyman
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 36
Плохо как рисовать текст на чужом окне

код
Код:
procedure DrawText(const hWnd:Thandle; const text:string);
var
 DC:thandle;
begin

 DC := GetWindowDC(hWnd);
 SetBkMode (DC, RGB(255,055,10));
 selectobject(dc, createfont(12,12, 0, 0, FW_SEMIBOLD	,
  0,0,0, DEFAULT_CHARSET, 0, 0, 1, 0, 'Arial'));
 SetTextColor(DC,RGB(0,255,0));
 TextOut(DC,5,10,PChar(Text),Length(Text));
 ReleaseDC(hWnd, DC);
end;
я вот набросал код, но когда он рисует , текст налаживает дргу на друга и получается фигня в общем что не так ?
Crazyman вне форума Ответить с цитированием
Старый 21.01.2009, 09:13   #2
rpy3uH
добрый няша
СуперМодератор
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,808
По умолчанию

как понять "текст налаживает друг на друга"?
rpy3uH вне форума Ответить с цитированием
Старый 21.01.2009, 10:03   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Наверное он имеет ввиду что текст в чужем окне рисуется без отрисовки его фона.
Stilet вне форума Ответить с цитированием
Старый 22.01.2009, 01:15   #4
Crazyman
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 36
По умолчанию

Цитата:
Сообщение от rpy3uH Посмотреть сообщение
как понять "текст налаживает друг на друга"?
вообщем данная функция записана в цикле repeat until . Текст меняется и когда рисуется другой тект, то старый не удаляется и остается и происходит наложение, получается куча слов в одном месте.
Crazyman вне форума Ответить с цитированием
Старый 22.01.2009, 08:21   #5
rpy3uH
добрый няша
СуперМодератор
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,808
По умолчанию

в цикле перед отрисовкой очищай то место где рисуешь. Можно, например, на этом месте нарисовать прямоугольник и закрасить его, либо перерисовать целевое окно (сообщение WM_PAINT)
rpy3uH вне форума Ответить с цитированием
Старый 23.01.2009, 00:23   #6
Crazyman
Пользователь
 
Регистрация: 24.01.2008
Сообщений: 36
Сообщение

Цитата:
Сообщение от rpy3uH Посмотреть сообщение
в цикле перед отрисовкой очищай то место где рисуешь. Можно, например, на этом месте нарисовать прямоугольник и закрасить его, либо перерисовать целевое окно (сообщение WM_PAINT)
Ну прямоугольник тоже остоваться будет !!! Некоторые части этого прямоугольника будут остоваться !!
Crazyman вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как задать текст в Edit в чужом окне Artem Win Api 6 14.12.2007 19:13
как написать текст в чужом окне мандарин Win Api 2 11.06.2007 10:11
Как прочесть текст в чужом окне? ffo Win Api 3 27.04.2007 12:50
Как при скрытом чужом окне сделать его дочерние окна(сообщения) видимыми ? Starwarrior Win Api 1 20.03.2007 09:51


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840