Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблемы с рисованием на окнах [D7, WinXP]


HeKTO ©   (2004-09-02 15:43:00) 

Следующий код при выполнении выводит надпись не на активном окне(GetActiveWindow) (окно с фокусом ввода), а на Screen, т.е. в данно случае в точке с коорд (0,0)-рабочей области монитора. Почему?

procedure DrawOnActWin;
var
 DC:HDC;
 ActWinCanvas:TCanvas;
begin
  DC:=GetDC(GetActiveWindow);
 try
  ActWinCanvas:=TCanvas.Create;
  ActWinCanvas.Handle:=DC;
  ScreenMesFONT:=Form2.FontDialog1.Font;
  ActWinCanvas.Font:=ScreenMesFONT;
  ActWinCanvas.TextOut(0,0,Form2.TextMessageEdit.Text);
 finally
  ReleaseDC(GetActiveWindow,DC);
  ActWinCanvas.Free;
 end;
end;


VMcL   (2004-09-02 19:46:00) [1]

>> HeKTO  (02.09.04 19:20) [4]

> Ты где взял свою ???

1. Delphi IDE: Help | Windows SDK
2. http://tinyurl.com/3hs5f


clickmaker   (2004-09-02 19:43:00) [2]


> Подскажи, где ты взял свой WinAPI справочник- в моём такой
> функции нет!

Delphi - Help - Windows SDK
"The GetActiveWindow function retrieves the window handle to the active window associated with the thread that calls the function. "


HeKTO   (2004-09-02 19:20:00) [3]

GetForegroundWindow работает, спасибо clickmaker!
Подскажи, где ты взял свой WinAPI справочник- в моём такой функции нет!( http://www.infocity.kiev.ua/- я тут брал)
VMcL - у меня инфы по этой функции всего :
Функция GetActiveWindow

Описание:
function GetActiveWindow: HWnd;

Отыскивает описатель окна, котоpое имеет текущий фокус ввода.

Возвpащаемое значение:
Идентификатоp активного окна.

См. также: SetActiveWindow

Ты где взял свою ???


VMcL   (2004-09-02 16:02:00) [4]

P.S. к [1]

Дело в том, что справку нужно читать.

Return Values
The return value is the handle to the active window attached to the calling thread's message queue. Otherwise, the return value is NULL.


clickmaker   (2004-09-02 15:59:00) [5]

попробуй GetForegroundWindow


VMcL   (2004-09-02 15:56:00) [6]

Наверное, потому что GetActiveWindow возвращает нуль.


Наверх

Титульная страница Поиск, карта сайта Написать письмо